praegune kellaaeg 20.06.2025 00:27:41
|
Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
Risto40
HV vaatleja
liitunud: 31.10.2004
|
24.11.2009 12:39:44
javascript - automaatne menüü taustavärv |
|
|
selline küsimus, et kas keegi javascripti tundja oskaks kirjutada sellise asja, et olenevalt lehe sisust muutub vastava menüü rea taustavärv etteantud värviks (või laetakse uus css)? Olen mõelnud, et põmst peaks asi kuidagi nii olema, et kuna lehe sisu on alati eraldi tabelis, siis tuleks anda tableile id="sisu" ja name="uudised", kus ID on alati sisu kuvavas tabelis olemas (ka sellepärast, et css määrata). NAME aga selleks, et menüüs kuidagi funktsioon tööle panna, nt getNameById('sisu'). Seejärel, kui Name on käes, siis võrreldakse seda menüü rea (menüü on samuti tabelina esitatud) NAME väärtustega ja juhul kui need kattuvad, siis muudetakse taustavärv nt helehalliks (või võetakse uus css stiil kasutusele). Kui ei kattu, ei tehta midagi.
Et paremini tablitest-asjadest aru saada siis:
<table width="100" border=1">
<tr name="syndmused">
<td>
sündmused
</td>
</tr>
<tr name="uudised">
<td>
uudised
</td>
</tr>
</table>
</br>
<table width="100" id="sisu" name="uudised" border=1">
<tr><td>
uudised
</td></tr>
</table>
Keerulisemaks teeb asja vist see, et kuna menüü linke on mitu (uudised, syndmused jne), siis tuleks lehe laadimisel see iga menüü rea peal läbi teha. Kui keegi oskab ehk lahendust pakkuda, oleks viimase peal. Ise kahjuks peale HTMLi veebiehitusest suurt midagi muud ei tea.
|
|
tagasi üles |
|
 |
andrusny
Kreisi kasutaja

liitunud: 20.03.2006
|
24.11.2009 13:21:43
|
|
|
Kuna sa ei kasuta Ajax it vaid laed lihtsalt iga lehe uuesti, siis selleks pole mõtet JS kasutada, kirjutad selle php koodi sisse.
Mingi muutuja sul ju get infis jookseb, millist lehte kuvad. Oletame, et sul tuleb lk=1, lk=2 jne.
Seda sama muutujat kasutadki.
<?php
if($_GET['lk']==1){$varv="#22aaff";$varv2="#ccaaff";}
if($_GET['lk']==2){$varv="#2200ff";$varv2="#cccccc";}
?>
<tr name="syndmused">
<td style="background:<?php echo $varv; ?>;">
sündmused
</td>
</tr>
<tr name="uudised">
<td style="background:<?php echo $varv2; ?>;">
uudised
</td>
</tr> |
JS saad elemendi stiili muuta
document.getElementById('mingiID').style.background = "#cccccc"; |
_________________
 |
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
Risto40
HV vaatleja
liitunud: 31.10.2004
|
24.11.2009 13:57:21
|
|
|
Võibolla ma ei oska praegu hästi välja lugeda, kuidas toodud näide töötab (pean enne järele proovima, te täpsemalt aru saada), kuid mainiksin veel ära, kuidas mu leht on üles ehitatud. Iga sisu fail on mul tglt index.php (syndmused.php, uudised.php jne) ning nendele on include() funktsiooniga külge haagitud menyy (ehk see ei ole igale lehele sisse kirjutatud vaid tuleb kõikidele lehtedele ühest kohast). Ja kuna see on ühest kohast külge haagitud, siis selleks ongi seda võrdluse asja vaja, kus võrreldakse menüü rea nime lehe sisu kuvava tabeli nimega.
|
|
tagasi üles |
|
 |
mikk36
HV Guru

liitunud: 21.02.2004
|
24.11.2009 14:15:00
|
|
|
Kus sa soovid paika määrata selle menüü taustavärvi?
|
|
Kommentaarid: 85 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
2 :: |
78 |
|
tagasi üles |
|
 |
Risto40
HV vaatleja
liitunud: 31.10.2004
|
24.11.2009 14:44:06
|
|
|
arvan, et valik peaks vist toimuma menyy failis. Et kui lehekülg on laetud, siis võrreldakse menyy nimesid sisu nimega ning kui on kattuvus, siis muudetakse värv.
aga kuna ma spetsialist pole, siis võib scripti ka kuhugi mujale sokutada. peaasi et asi toimiks.
värvi määramine.. no ideaalne oleks, kui saaksin värvi määrada siiski css's, siis tulevikus lihtsam muuta, kui vaja.
|
|
tagasi üles |
|
 |
andrusny
Kreisi kasutaja

liitunud: 20.03.2006
|
24.11.2009 21:16:51
|
|
|
Kole kahtlane ehitus, kui ma nüüd õigesti aru sain.
Leht syndmused.php
<html>
<body>
<?php
include('menyy.php');
?>
ja muu sisu
</body>
</html> |
uudised.php
<html>
<body>
<?php
include('menyy.php');
?>
ja muu sisu
</body>
</html> |
veider lähenemine
_________________
 |
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
Risto40
HV vaatleja
liitunud: 31.10.2004
|
25.11.2009 08:49:56
|
|
|
see on nii, sest kui vaja mõni menüülink hiljem lisada, siis tuleb vaid ühes failis seda teha, kuid muudatus toimub kõigil lehtedel. Kui lehti on päris palju juba, siis on üsna tüütu kõik lehed läbi käia ja menyy ära uuendada.
|
|
tagasi üles |
|
 |
mikk36
HV Guru

liitunud: 21.02.2004
|
25.11.2009 10:00:50
|
|
|
No siis muudad iga lehekülje failis natuke kujundust (style tagiga).
|
|
Kommentaarid: 85 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
2 :: |
78 |
|
tagasi üles |
|
 |
andrusny
Kreisi kasutaja

liitunud: 20.03.2006
|
25.11.2009 13:23:04
|
|
|
tsitaat: |
see on nii, sest kui vaja mõni menüülink hiljem lisada, siis tuleb vaid ühes failis seda teha, |
enamasti tehakse ikka vastupidi, on pealeht index.php kus on siis menüüd ja muu peamine ja include sinna sisse sisuks siis uudised.php, sisu.php jne.
Seetöttu ma arvasingi, et imelik ehitus ja siis saaks minu eelnenud postituse põhjal juba kujundust muuta, muutes vastavalt leheküljele ka css.
_________________
 |
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
|
lisa lemmikuks |
|
|
sa ei või postitada uusi teemasid siia foorumisse sa ei või vastata selle foorumi teemadele sa ei või muuta oma postitusi selles foorumis sa ei või kustutada oma postitusi selles foorumis sa ei või vastata küsitlustele selles foorumis sa ei saa lisada manuseid selles foorumis sa võid manuseid alla laadida selles foorumis
|
|
Hinnavaatlus ei vastuta foorumis tehtud postituste eest.
|