Witam.
(Temat umieszczam w tym dziale gdyż wydaje mi się, że problem jest związany z skrypcikiem)
Mam b.prosty skrypcik menu, który po kliknięciu się rozwija, a po ponownym kliknięciu chowa.
Skrypcik:
<?php
function flip(rid)
{
current=(document
.getElementById
(rid
).style
.display
== 'none') ?
'block' : 'none'; document
.getElementById
(rid
).style
.display
= current; }
function flop(rid)
{
current=(document
.getElementById
(rid
).style
.display
== 'block') ?
'none' : 'block'; document
.getElementById
(rid
).style
.display
= current; }
?>
Wszystko działało pięknie i wogóle do momentu kiedy nie zobaczyłem jak działa na najnowszym IE :/
Mianowicie problem wyglada tak, że mam zdefiniowane dwa typy <li>
jeden nadrzędny i drugi podrzędny
mniej więcej na tej zasadzie:
<li class="li2">Poddział
</li> <li class="li2">Poddział
</li> <li class="li2">Poddział
</li> <li class="li2">Poddział
</li> <li class="li2">Poddział
</li>
Działa to na tej zasadzie, że jeżeli kliknę w nadrzędny dział (Gora1,Gora2,Gora3) to rozwija mi sie jego zawartosc czyli Podzialy. Zdefiniowałem sobie graficzkę w css'ie o tak:
<?php
.menu-left-txt li
{
background-image: url('../images/li_left.png');
background-repeat: no-repeat;
list-style: none;
margin: 0 0 3px 0;
padding: 0 0 5px 35px;
font-family: Trebuchet MS;
font-size: 11px;
font-weight: bold;
}
.menu-left-txt .li2
{
background-image: url('../images/li_left2.png');
background-repeat: no-repeat;
list-style: none;
margin: 0 0 3px 0;
padding: 0 0 5px 35px;
font-family: Trebuchet MS;
font-size: 11px;
}
?>
i problem pojawia się bo jeżeli są jakieś poddziały to nie pojawia mi się ta graficzka do momentu kiedy nie kliknę na link żeby się rozwinął, wtedy pojawia mi się ta w li jak i po rozwinięciu bez problemu widzę graficzke dla li2.
Myslalem ze coś jest nie tak z li, ale jeżeli nie ma poddziałów to wszystko działa jak należy :/
Kodzik, odpowiadający za rozwijanie:
<div class="menu-left-txt">
<ul>
<?php
if ($kategoria2['Wierzch']) //tutaj sprawdzam czy ta kategoria ma jakies poddzialy, jezeli nie ma to wyswietla
my... tu dziala wszystko dobrze, pojawia sie tlo i jest ok.
{
?>
<li><a href="java script:ajaxpage('link.php?p=1&&id_k=
<?php echo $kategoria2['ID_kategorii'];?>', 'contentarea');">
<?php echo $kategoria2['Nazwa'];?></a></li>
<?php
}
else
{
/* jezeli natomiast sa podkategorie kolejne to wyswietlam najpierw ta kategorie j
ako A i stosuje moj skrypcik, wszystko jest umieszczone jednak w tym samym <li> co wyzej mimo to graficzka sie nie pojawia... dopiero kiedy uzytkownik klikn
ie zeby rozwinac menu wszystko sie pojawia */
echo' <li><A HREF="#" ONCLICK="flip('.$kategoria2['ID_kategorii'].'); return false;">'.$kategoria2['Nazwa'].'</a></li> <SPAN ID="'.$kategoria2['ID_kategorii'].'">
<script LANGUAGE="JAVASCRIPT">flip('.$kategoria2['ID_kategorii'].');</SCRIPT>';
$zapytanie3 = mysql_query("SELECT Nazwa, Wierzch, ID_kategorii FROM Kategorie WHERE (Poziom ='3') and (Rodzic = '".$kategoria2['ID_kategorii']."') ORDER BY Nazwa "); {
?>
// no i tutaj wyswietlam to zagniezdzone <li class="li2"> ktore rowniez dobrze laduje graficzke...
<li class="li2"><a href="java script:ajaxpage('link.php?p=1&&id_k=
<?php echo $kategoria3['ID_kategorii'];?>', 'contentarea');">
<?php echo $kategoria3['Nazwa'];?></a></li>
<?php
//echo' <li class="li2"> <a href="?p=1&&id_k='.$kategoria3['ID_kategorii'].'">'.$kategoria3['Nazwa'].'</a></li>';
}
}
Będę wdzięczny za jakieś wskazówki... byłbym w stanie to pojąć gdyby to była starsza wersja IE, ale w najnowszej ? :/