Код навигации
<td width="20%" class="box" align="left" valign="top">
<img src="../images/title.jpg" width="196" height="37" />
<?php
$sql = "select * from menu";
$result = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);
while ($row = mysql_fetch_assoc($result))
{
$sql2 = "select * from menu_section where menu_name = '".mysql_real_escape_string($row['name'])."'";
$result2 = mysql_query($sql2) or die(mysql_error() ."<br/>". $sql2);
echo '<li class = "box li"><a id = "menu" class = "box li a" href = "#" >'.$row['name'].'</a></li><br />
<div id="text" style="display:none">';
while ($row2 = mysql_fetch_assoc($result2))
{
echo "<div class='menu_section'><a class='a_menu_section' href='articles.php?menu_section=".$menu_section."'>".$row2['name']."</a></div>";
}
echo '</div>';
}
?>
</td>
Код скрипта
$(document).ready(function(){
$('#menu').toggle(function()
{
$('#text').fadeIn(1000);
},function(){
$('#text').hide(1000);
});
});
Со всеми стилями очень эффектно выглядит, но проблема...Работает только с первым пунктом.Почему не могу понять!Подскажите пожалуйста уважаемы 3натоки!
Спустя 16 минут, 6 секунд (27.01.2011 - 12:18) Snus написал(а):
Потому, что ты по ID обращаешься к элементу! А ID всегда должен быть уникальным. Вот он и нашел тебе первое вхождение и выполнил твою функцию на нем.
Если хочешь прописать функцию на несколько элементов, то обращайся по классу class="box li a"
Если хочешь прописать функцию на несколько элементов, то обращайся по классу class="box li a"
$(document).ready(function(){
$('.box li a').toggle(function()
{
$(this).find('div').fadeIn(1000);
},function(){
$(this).find('div').hide(1000);
});
});
Спустя 6 минут, 37 секунд (27.01.2011 - 12:25) nugle написал(а):
ниче не открывает
Спустя 14 минут, 59 секунд (27.01.2011 - 12:40) Snus написал(а):
nugle
У тебя классы как-то странно расставлены.
Там где у тебя id="menu" поменяй класс на class = "box li a UNIC"
И я не сразу заметил, что у тебя div за пределами li, меняй код на
У тебя классы как-то странно расставлены.
Там где у тебя id="menu" поменяй класс на class = "box li a UNIC"
И я не сразу заметил, что у тебя div за пределами li, меняй код на
$(document).ready(function(){
$('.UNIC').toggle(function(){
$(this).next('div').fadeIn(1000);
},function(){
$(this).next('div').hide(1000);
});
});
Спустя 5 минут, 40 секунд (27.01.2011 - 12:46) nugle написал(а):
там где id = menu на писал
так?
И поменял код, если так то тоже не работает
<a id = "menu" class = "box li a UNIC" href = "#" >
так?
И поменял код, если так то тоже не работает
Спустя 1 минута, 7 секунд (27.01.2011 - 12:47) Snus написал(а):
nugle
PS: А чем тебе fadeOut не нравится? Почему ты показываешь скрытые элементы fadeIn'ом, а скрываешь hide'ом?
PS: А чем тебе fadeOut не нравится? Почему ты показываешь скрытые элементы fadeIn'ом, а скрываешь hide'ом?
Спустя 2 минуты, 51 секунда (27.01.2011 - 12:50) nugle написал(а):
потому, что div style disрlay:none
Спустя 1 минута, 5 секунд (27.01.2011 - 12:51) Snus написал(а):
nugle
У меня работает о.О
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('.UNIC').toggle(function(){
$(this).next('div').fadeIn(1000);
},function(){
$(this).next('div').fadeOut(1000);
});
});
</script>
<?php
for($i = 0; $i < 10; $i++){
echo '<li class="box li a UNIC">test '.$i.'</li>';
echo '<div style="display: none;">test '.$i.'</div>';
}
?>
У меня работает о.О
Спустя 10 минут, 48 секунд (27.01.2011 - 13:02) nugle написал(а):
а у меня нет(
Вот код конечный
Вот код конечный
$(document).ready(function(){
$('.UNIC').toggle(function(){
$(this).next('div').fadeIn(1000);
},function(){
$(this).next('div').hide(1000);
});
});
<td width="20%" class="box" align="left" valign="top">
<img src="../images/title.jpg" width="196" height="37" />
<?php
$sql = "select * from menu";
$result = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);
while ($row = mysql_fetch_assoc($result))
{
$sql2 = "select * from menu_section where menu_name = '".mysql_real_escape_string($row['name'])."'";
$result2 = mysql_query($sql2) or die(mysql_error() ."<br/>". $sql2);
echo '<li class = "box li"><a id = "menu" class = "box li a UNIC" href = "#" >'.$row['name'].'</a></li><br />
<div class="div_menu" id="text" style="display:none">';
while ($row2 = mysql_fetch_assoc($result2))
{
echo "<div class='menu_section'><a class='a_menu_section' href='articles.php?menu_section=".$menu_section."'>".$row2['name']."</a></div>";
}
echo '</div>';
}
?>
</td>
Спустя 15 минут, 50 секунд (27.01.2011 - 13:17) Snus написал(а):
nugle
А зачем ты ссылку в li сделал? По помоему примеру можно было догадаться, что тег a нужно убрать
И <br> тег убери после li, div итак с новой строчки выводится
А зачем ты ссылку в li сделал? По помоему примеру можно было догадаться, что тег a нужно убрать
echo '<li class = "box li UNIC">'.$row['name'].'</li>';
И <br> тег убери после li, div итак с новой строчки выводится
Спустя 7 минут, 5 секунд (27.01.2011 - 13:24) nugle написал(а):
ты мой герой))))))))))))))))))Спасибо большое, теперь от этой прелести гла3 не отведу)+
Спустя 50 минут, 20 секунд (27.01.2011 - 14:15) Snus написал(а):
nugle
Та не за што
Та не за што