-
Fototrend
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
EmberXY
addikt
válasz Zoli1222 #1600 üzenetére
Elnézést, hogy belekontárkodok, de hátha tudok én is segíteni, ha már erre járok..
Ha jól értelmezem a dolgot, akkor 3 értéket szeretnél bekérni, amikkel azután a script elvégzi a számításokat..
Én 3 szövegmezőt adnék meg, az adott űrlapon, értelemszerűen a 3 érték bekéréséhez, testreszabás már részletkérdés, csak legyen elnevezve mindegyik (mezo1, stb) majd a váltózókat úgy hoznám létre, hogy
var a=parseInt(document.form_neve.mezo1.value);
var b=parseInt(document.form_neve.mezo2.value);
var c=parseInt(document.form_neve.mezo3.value); (ha tizedestört is lehet az érték, akkor parseFloat...), így a változók azt az értéket fogják tartalmazni, amit beírtál az egyes mezőkbe..
Aztán persze különféle ellenőrzéseket be lehet iktatni, hogy csak helyes formátumot vihessenek a mezőbe, ne írkálhassanak be mindenféle karaktereket, stb, de ez már részletkérdés..
Remélem, hogy segítettem.[ Szerkesztve ]
Up the Irons!
-
j0k3r!
senior tag
hello mindenkinek!
vannak divjeim:
<div id="fodiv">
<div id="bal">szoveg</div>
<div id="kozepso">szoveg</div>
<div id="jobb">szoveg</div>
</div>az volna a kerdesem, hogy js-ben hogy hivatkozok a kozepso div backgroundjara. (meg akarom valtoztatni egy onclick esemeny soran)
a segitsegetek elore is koszonom.some men just wanna watch the world burn...
-
j0k3r!
senior tag
megoldottam:
<script language="javascript" type="text/javascript">
function szincsere(color)
{
var szin=color;
document.getElementById("kozepso").style.background=szin;
}
</script>csak googlen sokhelyen "background-color" -t irtak...
some men just wanna watch the world burn...
-
EmberXY
addikt
válasz Zoli1222 #1604 üzenetére
Nincs mit, amit írtam, az végülis akkor lenne célszerű, ha konkrét űrlapon dolgozunk (--a kódban, amit írtál, a js hoz létre egy formot, tehát nincs alapból megadva az űrlap--), ott aztán akármit be lehet kérni, rengeteg módon meg lehet hívni az előre megírt js függvényeket, én általában mindig ilyen űrlapokkal szoktam dolgozni, ha adatokat kell bekérni.
Up the Irons!
-
-
Sk8erPeter
nagyúr
Azért írnak background-color-t, mert az konkrétan csak a színt módosítja CSS-ben, és az is helyes, csak backgroundColor formában elérhető (mindjárt bővebben). A sima background-dal több dolgot is lehet módosítani, lásd ezt: [link]. Pl. megadhatsz egy színt, és még mellé egy url-t, ahol az a kép található, amit a szín mellett még be akarsz pakolni háttérbe, ahogy a w3schools példája is írja:
body {background: #00ff00 url('smiley.gif') no-repeat fixed center;}A sima background-color is helyes, de remélem tudod, hogy JavaScriptben nem mindegy, hogy nagy- vagy kisbetűt írsz, és a JavaScript-es szintaktikának megfelelően adod-e meg, a background-color tulajdonságot így tudod megadni ([link] - JavaScript syntax):
object.style.backgroundColor="#00FF00"
Tehát nem kötőjellel, hanem egybe, és nagy C-vel adod meg (backgroundColor).
Ezekre figyelni kell, különben nem fog működni a kódod. Mindig nézd meg a helyes szintaktikát - például a w3schools-on (itt elég áttekinthető és könnyen megtalálható) -, mert a JavaScriptes stílusmódosítások szintaktikája sokszor nem egyezik meg a CSS szintaktikájával (de hasonló).[ Szerkesztve ]
Sk8erPeter
-
j0k3r!
senior tag
válasz Sk8erPeter #1607 üzenetére
koszonom szepen mindkettotoknek. majd odafigyelek a kis/nagybetukre, azthiszem valami komolyabb fejlesztokornyezetet be is szerzek ubuntura.
tudom, hogy nem ide tartozik.de : erre otlet?some men just wanna watch the world burn...
-
Zoli1222
őstag
var a = window.prompt("Add meg \"a\" értékét :", "<A szám:(ne feledd az \"a\" nem lehet nulla)>");
if (a==0){
alert("Mondom nem lehet NULLA!");
onClick=history.go();
}
var b = window.prompt("Add meg \"b\" értékét :", "<A szám>");
var c = window.prompt("Add meg \"c\" értékét :", "<A szám>");Mi hiányzik még belőle, h hiba nélkül fusson le?
vagy a onClick=history.go(); helyett mit kellene beírni?
Mert ha 0-t írok be akkor figyelmeztet, h nem lehet 0 és újra is kezdi, de megmarad az első lekérdezés is. -
Sk8erPeter
nagyúr
válasz Zoli1222 #1609 üzenetére
Minek kell neked a history.go() ?
onClick=history.go();
Ezzel mit akartál?Az ilyenek helyett:
"Add meg \"b\" értékét :"
írhatod így is:
'Add meg "b" értékét :'
És máris áttekinthetőbb. (A változtatás itt a sima aposztrófban rejlik, így már használhatod az idézőjelet.)[ Szerkesztve ]
Sk8erPeter
-
Zoli1222
őstag
válasz Sk8erPeter #1611 üzenetére
1. Csak azt, h újra kezdje az a érték megkérdezésével.
2. Innentől így teszek majd az aposztrófokkal.
Az az igazság, h js-t most kezdem tanulni, és sok utasítást nem ismerek, és most még csak a neten tudok utána nézni dolgoknak.
Küldök egy pü-t.
-
-
j0k3r!
senior tag
válasz Sk8erPeter #1610 üzenetére
sajnos nem megy, a parameterezesnel lehet a gond, ahogy leviszem az egeret a menupontrol egybol visszavaltozik az eredeti szinre (fekete alapon szines betu) :/
ime a kodreszlet:
<head>
<title>Proba menu</title>
<link type="text/css" rel="stylesheet" href="style.css"/>
<script language="javascript" type="text/javascript">
function szincsere(color,melyik)
{
var szin=color;
var nev=melyik;
document.getElementById("kozepso").style.background=szin;
//document.write("melyik = "+nev+"<br>");
document.getElementsByClassName("nev").style.backgroundColor=szin;
document.getElementsByClassName("nev").style.Color='#000000';
}
</script>
</head>
<body bgcolor="Black">
<p align="center"><img src="lol2.png"></p>
<ul id="menu">
<li class="piros"><a onclick="szincsere('#FF0000','piros');">PIROS</a></li>
<li class="narancs"><a onclick="szincsere('#FFA500','narancs');">NARANCS</a></li>
<li class="citrom"><a onclick="szincsere('#FFFF00','citrom');">CITROM</a></li>
<li class="zold"><a onclick="szincsere('#00FF00','zold');">ZOLD</a></li>
<li class="kek"><a onclick="szincsere('#4876FF','kek');">KEK</a></li>
<li class="lila"><a onclick="szincsere('#9400D3','lila');">LILA</a></li>
</ul>elso probalkozasom par het olvasgatas utan, szoval nem nevetni : )
ha esetleg valamit mashogy csinalnatok, a kritikat szivesen fogadom.adok kepet is, hatha ez segit:
[ Szerkesztve ]
some men just wanna watch the world burn...
-
Sk8erPeter
nagyúr
Egy kissé túlbonyolítottad.
A függvény:
<script language="javascript" type="text/javascript">
<!--
function szincsere(color,melyik){
melyik.style.backgroundColor=color;
}
// -->
</script>A lista:
<ul id="menu">
<li class="piros"><a onclick="szincsere('#FF0000',this);">PIROS</a></li>
<li class="narancs"><a onclick="szincsere('#FFA500',this);">NARANCS</a></li>
<li class="citrom"><a onclick="szincsere('#FFFF00',this);">CITROM</a></li>
<li class="zold"><a onclick="szincsere('#00FF00',this);">ZOLD</a></li>
<li class="kek"><a onclick="szincsere('#4876FF',this);">KEK</a></li>
<li class="lila"><a onclick="szincsere('#9400D3',this);">LILA</a></li>
</ul>Működik.
[ Szerkesztve ]
Sk8erPeter
-
j0k3r!
senior tag
válasz Sk8erPeter #1616 üzenetére
koszonom szepen! kicsit meg alakitottam rajta, de mukodik!!!
<script language="javascript" type="text/javascript">
function szincsere(hattersz, betusz, melyik)
{
document.getElementById("kozepso").style.background=hattersz;
document.getElementById("kozepso").style.color=betusz;
melyik.style.backgroundColor=hattersz;
melyik.style.color=betusz;
}
</script>
</head>
<body>
<p align="center"><img src="lol2.png"></p>
<ul>
<li id="piros"><a onclick="szincsere('#FF0000' ,'#000000', this);">PIROS</a></li>
<li id="narancs"><a onclick="szincsere('#FFA500' ,'#000000', this);">NARANCS</a></li>
<li id="citrom"><a onclick="szincsere('#FFFF00' ,'#000000', this);">CITROM</a></li>
<li id="zold"><a onclick="szincsere('#00FF00' ,'#000000', this);">ZOLD</a></li>
<li id="kek"><a onclick="szincsere('#4876FF', '#000000', this);">KEK</a></li>
<li id="lila"><a onclick="szincsere('#9400D3', '#000000', this);">LILA</a></li>
</ul>most mar csak 1 gondom van, ha mind a 6 menupontot vegignyomom, akkor mind a 6 "vilagit", szoval kellene valami elagazast irnom, hogy egyszerre csak 1 legyen aktiv.
egy kis segitseget tudnal adni az elindulashoz? (ne kesz megoldast, mert gondolkodni szeretnek rajta)elore is koszonom.
[ Szerkesztve ]
some men just wanna watch the world burn...
-
j0k3r!
senior tag
válasz Sk8erPeter #1616 üzenetére
ha jol sejtem, akkor a this egy mutato, mint c-ben?!
ugy szeretnem megcsinalni, hogy az onclick esemenyt kibovitenem meg par sorral, ami az eppen kattintas alatt levo menun kivul az osszes menut "default" helyzetbe rakja, es igy mindig csak 1 lesz "szines/aktiv".namost az volna a kerdesem, hogy this nelkul, hogy tudnek hivatkozni az egyes menuelemekre?
ugy mint itt a "kozepso" div-re:
document.getElementById("kozepso").style.background=szin;a segitseged elore is koszonom.
some men just wanna watch the world burn...
-
FixY67
senior tag
Valamit nem értek: www.sonicwall.com
Le van tiltva a javascript. Hogyhogy mégis működik az oldal menüje?
(FF 3.0.6 + Noscript)Az ilyen szerkezetek:
<li class="tab start" onmouseover="endTabOver('global','off');" onmouseout="endTabOut();">
működéséhez nincs szükség JS-re?...
-
Sk8erPeter
nagyúr
Ha le lenne tiltva a JavaScript, NEM működnének a JS-es elemek. Az onmouseover, onmouseout JS-eseményeket hívnak meg, ez nem teljesülhet, ha le van tiltva a JavaScript.
Ha FF alatt tényleg letiltod, neked sem fog működni: Eszközök-Beállítások-Tartalom-JavaScript engedélyezése mellől pipa ki, majd OK. Máris nem fog működni.
Ezek szerint a NoScripted szarul van beállítva.Sk8erPeter
-
FixY67
senior tag
válasz Sk8erPeter #1621 üzenetére
Én is így gondoltam (egyébként a FF nem 3.0.6, hanem 3.6), épp ezért érdeklődtem.
Szóval valami nem kerek a noscript körül...
Bíztam benne, hogy csak én vagyok lemaradva ennyire a webes technológiákat illetően és ez már nem JS, hanem valami HTML 10.2 vagy hasonló....
-
FixY67
senior tag
válasz Sk8erPeter #1621 üzenetére
Ez nem nyert... akkor már ketten vagyunk lemaradva...
Kikapcsoltam teljesen a JS-t, ez a menü mégis működik....
-
Yooha
aktív tag
Sziasztok!
Java telepítés közben az alábbi hiba:
Wrapper.createfile Error 3: Nem találja a megadott útvonalat (én nem adtam meg semmit)
Ilyenkor mi van?Én a kardomat a kezemben hordom. Te a tiédet a szívedben és az elmédben. Ahogy én látom, ez 2:1 fegyverelőny a részedre.
-
EmberXY
addikt
A google a barátod.
Első nekifutásra..: Search: Wrapper.createfile Error
Én ugyan nem tudom megoldani a problémát, de páran már találkoztak vele, hátha lehet találni valami hasznosat..[ Szerkesztve ]
Up the Irons!
-
Sk8erPeter
nagyúr
Én nem érzem magam "lemaradva"...
Hát nem tudom, Te hogy csinálod, mert most épp Ubuntu alól próbáltam ki, és ugyanúgy ha kikapcsolom a JavaScriptet, akkor onnantól már nem megy... Te figyelj, nem lehet egészen véletlenül, hogy a JS kikapcsolása után nem frissítesz? Mert amíg nem frissítesz, addig működni is fog továbbra is a menü a JS kikapcsolása után is...
Egyébként az ilyesmit már meg lehet oldani CSS-sel is, nem muszáj hozzá JavaScript. De az általad linkelt oldal esetében JS-t használnak.Sk8erPeter
-
FixY67
senior tag
válasz Sk8erPeter #1626 üzenetére
Mondjuk én Vista alatti FF-t néztem, de most kipróbálom XP alól is egy 3.5-össel, kíváncsi vagyok, ez mit művel.
Szerk: megnéztem. Itt is működőképes marad a menü a JS tiltása után.
Szerk2: még akkor is, ha a JS tiltás után kilépek, majd vissza. Cache törlés után is...
Szóval feladom. Vagy mégis CSS van a dologban - bár az nekem már a kínai kategória.[ Szerkesztve ]
...
-
EmberXY
addikt
A www.sonicwall.com oldalra gondolsz?
Nekem normál esetben a menükön lépkedve aláhúzott lesz a menüpont, és elékerül egy nyelv megnevezés, ha letiltom a js-t, és frissítés nélkül újra próbálom, nálam az aláhúzás ugyan megmarad, de a nyelveket már nem teszi elé, vagyis letiltja ezt a dolgot, bármiféle cache ürítés nélkül is...és ahogy a pipát visszateszem a js mellé, újból megjeleníti..
Én Win 7 alatt FF 3.6-tal próbáltam.....[ Szerkesztve ]
Up the Irons!
-
EmberXY
addikt
Ez tényleg egy fura oldal... számomra is paranormális, de valóban minden műxik tovább.. biztos, hogy JS ez? Még a végén azt hinné az ember, hogy flash..
Egyébként amire én gondoltam, az a képen látszik, odarak egy nyelvet, amit a js letiltása után már nem jelenít meg, ekkor még én is azt hittem, hogy mindent értek, de akkor már ketten vagyunk...
Up the Irons!
-
EmberXY
addikt
Hát nincs kizárva, hogy valami kimaradt...
Bár mostanság elkezdtem js-sel foglalkozni, de még rengeteget kell tanulnom, hogy ne érjenek ilyesféle meglepetések...bár így is elég sok fura dologgal találkoztam már, pl hogy megírok egy scriptet, és vagy az IE, vagy a FF nem hajlandó végrehajtani...
Mindig van új a nap alatt, de ezzel a "letiltom, de mégis megy" dologgal bevallom, én sem tudok jelenleg mit kezdeni..[ Szerkesztve ]
Up the Irons!
-
Sk8erPeter
nagyúr
Most látom ezt a hsz.-edet: [link]
Eddig a főoldalt mutogattad, hogy ott megjelennek a szövegek, de miért nem ezzel kezdted? Itt a menü megjelenítése CSS-sel van megoldva... Máskor talán legyél egyértelműbb, és akkor hamarabb kapod meg a választ, és nem kell ötezerszer megkérdezni...
Senki nincs lemaradva, csak nem tudtad feltenni normálisan a kérdést. Eddig nem azt mondtad, hogy a http://www.sonicwall.com/emea oldalt kellene bambulni, azonbelül is a menüsor megjelenését, hanem a főlapot linkelgetted...Sk8erPeter
-
FixY67
senior tag
válasz Sk8erPeter #1634 üzenetére
Hóttmind1, mert a főoldalon is megváltozik a felirat, ha fölé viszem az egeret.
Úgy értem: kikapcsolt/tiltott JS mellett is.[ Szerkesztve ]
...
-
Sk8erPeter
nagyúr
Most kikerestem neked, konkrétan mi felelős a menü megjelenítéséért:
Forráskód:
229. sor:
<li onmouseout="ddMenuHide();" onmouseover="ddMenuShow('2758','off','global','0.8');" class="tab offmenu" id="dd-menu_2758_lnk"><a href="/emea/2758.html" id="dd-menu_2758_anc"><span>• </span>Partners</a>
<ul id="dd-menu_2758" class="dd-menu">
Ebből a class="tab offmenu" és class="dd-menu" a lényeg: utána a CSS-fájlban ezekre vonatkozóan ez szerepel:
http://www.sonicwall.com/emea/styles_global.css655. sor (kommentbe tettem, ami a lényeg ez egészből):
.navbar .dd-menu,
.navbar .fo-menu {
display: none; /* EZ A LÉNYEG! */
position: absolute;
top: 2.26em;
left: 0.09em;
z-index: 51;
background: #eee;
border: .09em solid;
border-left-color: #eee;
border-top: none;
border-right-color: #707070;
border-bottom-color: #707070;
background: #c2c2c2;
}730. sortól:
.navbar .tab.offmenu:hover .dd-menu,
.navbar .tab.onmenu:hover .dd-menu {
display: block; /* EZ A LÉNYEG! */
}Alapból: display:none; (nem látható), egér fölévitelekor display:block; lesz (megjelenik).
Ennyi a trükk.----
A főoldalon pedig egyértelműen JavaScripttel oldják meg (tehát szerintem nálad a JavaScript kikapcsolásakor a NoScript valamilyen hibája miatt jeleníti meg, vagy valami egyéb hiba miatt):
Forráskód:
248. sor:
<h5><span id="lang_01" class="lang">English</span><a name="North America" href="/us/" onmouseover="showLang('01');" onmouseout="hideLang();" onClick="SetCookie('site', this.name, exp);"><span class="arrow">»</span> North America</a></h5>177. sor:
#countryselectlist .lang {
display: none;
width: 12em;
position: absolute;
top: 0.25em;
left: -13em;
text-align: right;
}
Emiatt tehát alapból display:none; van beállítva neki, vagyis nem jelenik meg.
Az onmouseover-re (fölé viszed az egeret) a JavaScript megváltoztatja display:block;-ra (megjelenik, látható), mert meghívja a showLang() függvényt, majd onmouseout-ra (elviszed róla az egeret) ismét display:none lesz a stílus a hidelang() függvény meghívása miatt:
214. sor:
<script language="javascript" type="text/javascript">
var SpanID = '';
function showLang(ID) {
SpanID = ID;
document.getElementById('lang_'+SpanID).style.display = "block";
}
function hideLang() {
document.getElementById('lang_'+SpanID).style.display = "none";
}
</script>Remélem sikerült tisztázni a kérdést, hogy mitől jelenik meg.
Sk8erPeter
-
FixY67
senior tag
válasz Sk8erPeter #1637 üzenetére
Köszi. Végeredményben az volt a lényeg, hogy nem csak JS alatt lehet ilyen izgő-mozgó menüket létrehozni.
Ami a főoldalt illeti: totálisan kikapcsolt JS mellett (nem csak noscript, hanem a FF opciók közt letiltott JS mellett is) működik a feliratok változtatása. A nyelv nem jelenik meg mellette, csak ha engedélyezem a JS-t, de aláhúzódik stb. Gondolom, ez is ugyanaz a módszer, mint a belső menü esetén.
(ettől kezdve már csak az a kérdés, hogy eszerint a CSS is tud olyan ártalmas lenni, mint a javascript? )...
-
Sk8erPeter
nagyúr
Hát eddig azt hittem, hogy azt mondod, hogy kikapcsolt JavaScripttel is megjelenik a lebegő nyelv... Na de akkor már teljesen egyértelmű, hogy Te a CSS-formázásra gondolsz: ebben nincs semmi misztikum, ma már a legtöbb oldalon többek közt ezzel adják meg az oldal stílusát, kinézetét, a margókat, stb.
A CSS is fejlődés alatt van, az újabb verzióban még több formázási lehetőség lesz elérhető, mint a mostaniban: lekerekíthető sarkok, árnyékolás a "dobozoknak" trükközés nélkül, meg egyebek, amiknek valóban van gyakorlati haszna."ettől kezdve már csak az a kérdés, hogy eszerint a CSS is tud olyan ártalmas lenni, mint a javascript?"
Már miért lenne ártalmas? Ezt tényleg nem értem...Mellesleg a CSS-formázás sokkal elegánsabb tud lenni, mint ugyanaz JavaScripttel, erre legjobb példa a menüknél, ha arra állítasz be stílust, hogy ha egy elem fölé viszed az egeret, akkor egy másik kép jelenjen meg annak háttereként (ha föléviszed az egeret, akkor mondjuk kap egy világosabb háttérszínt a menü adott gombja) - ez JavaScripttel megoldva (onmouseover, onmouseout) az Internet Explorernek még a 8-as változatában is egy kis átmeneti villanást eredményez, vagyis a képváltás viszonylag lassan történik meg, míg CSS-sel megoldva (elem:hover) nincs ilyen probléma (vagy jóval rövidebb a villanás, erre megoldás a következőkben leírt módszer), és a kód is szebb. Ráadásul az is megoldható, hogy a menüpont alap- és világosabb hátterét egy képfájlban egymás mellé/fölé/alá pakold, és amikor föléviszed az egeret, akkor csak arrébb told a megfelelő pozícióba a hátteret, úgy, hogy akkor már a világosabb háttér jelenjen meg - így meg garantáltan nem lesz minimális "villanás" (háttércsere-késés) sem, tapasztaltam.
A CSS nagyon előnyös tud lenni.Sk8erPeter
-
j0k3r!
senior tag
válasz Sk8erPeter #1619 üzenetére
hello megint! kicsit elakadtam megint. tudnal valami hasznos leirast adni arrol, hogy js-ben a html elemeire hogy lehet hivatkozni (this nelkul)?
vagy mindig adjak id-ket, aztan document.getElementById("akarmi") ?
ha for ciklus, meg tomb, akkor valoszinuleg valami index alapjan kellene vegigmenni a ciklusnak az adott elemeken, bar lehet rosszul gondolom.
a segitseged elore is koszonom.some men just wanna watch the world burn...
-
shev7
veterán
igen, a legegyszerubb, ha azokra az elemekre amikre hivatkozni akarsz, van id-d.
Vagy lehet az un. DOM tree-ben lepkedni: ehhez a nextSiebling, previousSiebling, parentNode, childNodes property-ket lehet hasznalni, de ez elobb-utobb igen csunya, olvashatatlan kodot eredmenyez...
''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''
-
Sk8erPeter
nagyúr
Igen, lehet document.getElementById alapján is, egy for ciklussal, és akkor mondjuk egy tömbbe bepakolhatod az id-ket:
var tomb=new Array("ez", "az", "amaz");
for(var i=0;i<tomb.length;i++)
document.getElementById(tomb[i]).style.backgroundColor="red";Meg persze childNodes-zal is meg lehet oldani, de az valóban átláthatatlan lehet egy idő után, ahogy shev7 is írta.
Sk8erPeter
-
j0k3r!
senior tag
ma delutan neki is esek. koszonom mindkettotok segitseget!
some men just wanna watch the world burn...
-
j0k3r!
senior tag
valaki megmondana mi a hiba? en hiaba bamulom nem talalok semmit...
script:<script language="javascript" type="text/javascript">
function szincsere(hattersz, betusz, melyik)
{
document.getElementById("kozepso").style.background=hattersz;
document.getElementById("kozepso").style.color=betusz;
var nevek=new Array("piros", "narancs", "citrom", "zold", "kek", "lila");
var szinek=new Array("#FF0000", "#FFA500", "#FFFF00", "#00FF00", "#4876FF", "#9400D3");
for(var i=0;i<nevek.length;i++)
{
document.getElementById(nevek[i]).style.backgroundColor=betusz;
document.getElementById(nevek[i]).style.color=szinek[i];
}
melyik.style.backgroundColor=hattersz;
melyik.style.color=betusz;
}
</script>lista:
<ul>
<li id="piros"><a onclick="szincsere('#FF0000' ,'#000000', this);">PIROS</a></li>
<li id="narancs"><a onclick="szincsere('#FFA500' ,'#000000', this);">NARANCS</a></li>
<li id="citrom"><a onclick="szincsere('#FFFF00' ,'#000000', this);">CITROM</a></li>
<li id="zold"><a onclick="szincsere('#00FF00' ,'#000000', this);">ZOLD</a></li>
<li id="kek"><a onclick="szincsere('#4876FF', '#000000', this);">KEK</a></li>
<li id="lila"><a onclick="szincsere('#9400D3', '#000000', this);">LILA</a></li>
</ul>probaltam if - else -el is, ami jobban tetszett volna, ha mukodik:
<script language="javascript" type="text/javascript">
function szincsere(hattersz, betusz, melyik)
{
document.getElementById("kozepso").style.background=hattersz;
document.getElementById("kozepso").style.color=betusz;
var nevek=new Array("piros", "narancs", "citrom", "zold", "kek", "lila");
var szinek=new Array("#FF0000", "#FFA500", "#FFFF00", "#00FF00", "#4876FF", "#9400D3");
for(var i=0;i<nevek.length;i++)
{
if(document.getElementById(nevek[i])==melyik)
{
document.getElementById(nevek[i]).style.backgroundColor=hattersz;
document.getElementById(nevek[i]).style.color=betusz;
}
else
{
document.getElementById(nevek[i]).style.backgroundColor=betusz;
document.getElementById(nevek[i]).style.color=szinek[i];
}
}
}
</script>some men just wanna watch the world burn...
-
Sk8erPeter
nagyúr
Mielőtt elkezdeném kegyetlenül bámulni a kódot, hogy kibogarásszam, mi a hiba, inkább Te írhatnád le, mi a hibajelenség, mi nem működik, mit nem csinál, ne nekünk kelljen már kitalálni. Egyáltalán nem megy, nem vált színt? Amúgy van valami különleges célod azzal, hogy paraméterként is átadod a háttérszínt, meg még külön tömbben is tárolod? Mert ha a "kozepso" elemnek szeretnéd átadni ugyanazt a színt, mint amit kap az aktuális klikkelt elem, akkor tök felesleges paraméterként is átadni (vagy épp a tömb felesleges, ez a Te döntésed).
Sk8erPeter
-
j0k3r!
senior tag
válasz Sk8erPeter #1646 üzenetére
az onclick esemeny utan a kozepso div-em hattere megvaltozik. ez jo, de ahogy elmozditom az egermutatot a menupont felol, el is tunik az "inverz" kijeloles, amit a css-ben hoverrel csinaltam a menupontokra.
es igen johogy mondod, szerintem 1 parameter is eleg lesz a 3 helyett. (this marad)
mar javitottam is.some men just wanna watch the world burn...
-
Sk8erPeter
nagyúr
Tehát van CSS-sel hover tulajdonság is beállítva, hogy ha föléviszed az egeret, megváltozzon a színe a beállítottra, de azt szeretnéd, hogy menüpontra kattintáskor változzon meg a "kozepso" elem színe olyanra, amilyen a kattintott elemnek CSS-sel a hover-re van beállítva, és a kattintott elemnél meg is maradjon ugyanaz a háttérszín, mint amit CSS-sel hover-rel beállítottál? Csak hogy egész pontosan értsem, mit szeretnél.
Sk8erPeter
-
j0k3r!
senior tag
válasz Sk8erPeter #1649 üzenetére
pontosan fonok
a kozepso egyebkent egy div. (amivel eddig nem volt gond)
inkabb a menupontoknal van gond, hogy vagy egy se "szinezodik be" vagy pedig a 6 menupontot vegigkattintva mind a 6 "beszinezodik".
beszinezodik==css hover-es kinezetszerk: esetleg, ha az segitene feltolthetem valahova a css+html filet
[ Szerkesztve ]
some men just wanna watch the world burn...