PDA

View Full Version : سوال: مشکل این کد چیه(منو)



student91
یک شنبه 14 خرداد 1391, 17:58 عصر
سلام.
این کد رو که می ذارم،(کد رو به حالت ساده در آوردم که حل مشکلش راحت تر باشه)،اگه اجراش کنید،وقتی روی سطح سوم منو که محتوی اون test2،هست،برید، مدام displayاون، none و blockمیشه!چکار کنم که ثابت بشه!می خوام از این کد برای منو آبشاری استفاده کنم.
لطفا کمکم کنید.

<?PHP
$con=mysql_connect("localhost","root","");
mysql_select_db("opinion",$con);
function fill_menu2($id)
{
echo "<ul id='sub_menu".$id."' class='sub_menu' style='position:absolute;width:200px;background:re d;display:block;margin:0px;padding:0px;margin-left:180px;margin-top:-20px;float:left;list-style:none' >";
{
echo "<li id='5' class='sub_menu_li2' style='height:20px;'> test2 </li>";
}
echo"</ul>";
}
function fill_menu($id)
{
echo "
<table>
<tr><td>
<ul id='sub_menu".$id."' class='sub_menu' style='position:absolute;width:200px;background:bl ue;display:block;margin:0px;padding:0px;list-style:none' >";
{
echo "<li id='3' class='sub_menu_li2' style='height:20px;'>test1</li>";
fill_menu2(3);
}
echo"</ul></td></tr></table>";
}
?>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript" src='./jquery.js' ></script>
<script type="text/javascript" >

$(document).ready(function(){
$('.menu_li').mouseover(function(){
id=$(this).attr('id');
subid='#sub_menu'+id;
$(subid).css({'display':'block'});
});
$('.menu_li').mouseout(function(){
id=$(this).attr('id');
subid='#sub_menu'+id;
$(subid).css({'display':'none'});
});

$('.sub_menu_li2').mouseenter(function(){
$('.sub_menu').css({'display':'none'});
id=$(this).attr('id');
subid='#sub_menu'+id;
$(subid).css({'display':'block'});
});
/*$('.sub_menu_li').mouseleave(function(){
$('.sub_menu_li2').stop();
id=$(this).attr('id');

//if($(this).parents().parents().attr('class')=='men u_li'){}
//else{$(this).parents().css({'display':'block'});}
$(this).css({'display':'block'});
subid='#sub_menu'+id;
$(subid).css({'display':'none'});

});

*/
});
</script>
</head>
<body>
<table>
<tr>
<?PHP
$i=0;
while($i<1)
{
$i++;
echo "<td id='1' class='menu_li' style='background:yellow;'> "."oooooppppp";
fill_menu(1);
}
echo " </td>";
?>
</tr>
</table>

کل کدش همینه

djsaeedkhan
یک شنبه 14 خرداد 1391, 19:51 عصر
سلام
شما همه استایل ها رو در یک چا قرار بده. بعد سینتکسش رو هم بررسی کن که مشکل نداشته باشه. چون اگر مشکل داشته باشه خطایی نمیده ولی درست کار نمی کنه.
بعد می تونی برای قسمت های جداگانه آیدی یا کلاس های جداگانه تعریف کنید. اگز باز هم مشکلت حل نشد این قسمت که display:block گذاشتی رو حذف کن. نشد مرحله به مرحله بررسی کن درست بشه.
بازم اگر درست نشد کل صفحه رو ضمیمه بفرمایید+ اطلاعات نمونه که بشه اجرا کرد و دید مشکلش کجاست.
با سپاس