PDA

View Full Version : سوال: مشکل در نمایش منو



hahaie
جمعه 16 تیر 1396, 08:55 صبح
دوستان سلام.
کدای زیر بخشی از کدهاییه که یک منو رو نشون میده:


<nav style="width: 1120px;height: 43px;background: rgba(212,232,179,0.81);border-top: 1px solid rgba(184,204,199,0.81);margin-top: 10px;box-shadow: 1px 5px 3px #eee;">
<div id="div_menu_level1" style="width: 896px;height: 43px;margin: auto">
<ul style="margin: 0;padding: 0;height: 100%;position: relative">
<li style=" float: right;margin-left: 50px;margin-top: 5px">
<a>کالای دیجیتال</a>
<ul style="width: 896px;height: 43px; margin-top: 13px;padding: 0;position: absolute;background: rgba(249,215,10,0.6);display: none">
<li style="float: right;margin-left: 50px;margin-right: 5px;margin-top: 5px;">
<a>موبایل</a>
<div id="div_menu_level3" style="width: 895px;height: 300px;position: absolute;margin-top: 12px;background: rgba(249,215,10,0.6);right: 0">
<div style="width:223px;height: 300px;float: right;border-left: 1px solid rgba(184,204,199,0.81);border-top : 1px solid rgba(184,204,199,0.81)">
<ul class="menu_level3" style="padding: 0;margin-right: 5px">
<li><a>گوشی موبایل</a></li>
<li><a>Apple</a></li>
<li><a>Samsung</a></li>
<li><a>LG</a></li>
<li><a>Sony</a></li>
<li><a>Nokia</a></li>
<li><a>Lenova</a></li>
</ul>
</div>
<div style="width:223px;height: 300px;float: right;border-left: 1px solid rgba(184,204,199,0.81);border-top : 1px solid rgba(184,204,199,0.81)"></div>
<div style="width:223px;height: 300px;float: right;border-left: 1px solid rgba(184,204,199,0.81);border-top : 1px solid rgba(184,204,199,0.81)"></div>
<div style="width:222px;height: 300px;float: right;border-top : 1px solid rgba(184,204,199,0.81);"></div>
</div>
</li>
<li style="float: right;margin-left: 50px;margin-top: 5px;">
<a>تبلت و کتابخوان</a>
<!--<div style="width: 895px;height: 300px;position: absolute;margin-top: 12px;background: rgba(249,215,10,0.6);right: 0">-->
<!--<div style="width:223px;height: 300px;float: right;border-left: 1px solid rgba(184,204,199,0.81);border-top : 1px solid rgba(184,204,199,0.81)">-->
<!--<ul class="menu_level3" style="padding: 0;margin-right: 5px">-->
<!--<li><a>تبلت</a></li>-->
<!--<li><a>تبلت 1</a></li>-->
<!--<li><a>تبلت 2</a></li>-->
<!--<li><a>تبلت 3</a></li>-->
<!--<li><a>تبلت 4</a></li>-->
<!--<li><a>تبلت 5</a></li>-->
<!--<li><a>تبلت 6</a></li>-->
<!--</ul>-->
<!--</div>-->
<!--<div style="width:223px;height: 300px;float: right;border-left: 1px solid rgba(184,204,199,0.81);border-top : 1px solid rgba(184,204,199,0.81)"></div>-->
<!--<div style="width:223px;height: 300px;float: right;border-left: 1px solid rgba(184,204,199,0.81);border-top : 1px solid rgba(184,204,199,0.81)"></div>-->
<!--<div style="width:222px;height: 300px;float: right;border-top : 1px solid rgba(184,204,199,0.81);"></div>-->
<!--</div>-->
</li>
<li style="float: right;margin-left: 50px;margin-top: 5px;"><a>لپ تاپ</a></li>
</ul>
</li>
<li style="float: right;margin-left: 50px;margin-top: 5px">
<a style="position: static">لوازم خانگی</a>
<ul style="width: 100%;height: 43px; margin-top: 13px;padding: 0;position: absolute;background: rgba(249,215,10,0.6);right: 0;display: none">
<li style="float: right;margin-left: 50px;margin-right: 5px;"><a>صوتی و تصویری</a></li>
<li style="float: right;margin-left: 50px"><a>لوازم خانگی برقی</a></li>
<li style="float: right;margin-left: 50px"><a>آشپزخانه</a></li>
</ul>
</li>
<li style="float: right;margin-left: 50px;margin-top: 5px">
<a>زیبایی و سلامت</a>
<ul style="width: 100%;height: 43px; margin-top: 13px;padding: 0;position: absolute;background: rgba(249,215,10,0.6);right: 0;display: none">
<li style="float: right;margin-left: 50px;margin-right: 5px;"><a>عطر</a></li>
<li style="float: right;margin-left: 50px"><a>لوازم آرایشی</a></li>
<li style="float: right;margin-left: 50px"><a>لوازم بهداشتی</a></li>
</ul>
</li>
<li style="float: right;margin-left: 50px;margin-top: 5px">
<a>فرهنگ و هنر</a>
<ul style="width: 100%;height: 43px; margin-top: 13px;padding: 0;position: absolute;background: rgba(249,215,10,0.6);right: 0;display: none">
<li style="float: right;margin-left: 50px;margin-right: 5px;"><a>کتاب و مجلات</a></li>
<li style="float: right;margin-left: 50px"><a>لوازم التحریر</a></li>
<li style="float: right;margin-left: 50px"><a>صنایع دستی</a></li>
</ul>
</li>
<li style="float: right;margin-left: 50px;margin-top: 5px">
<a>ورزش و سرگرمی</a>
<ul style="width: 100%;height: 43px; margin-top: 13px;padding: 0;position: absolute;background: rgba(249,215,10,0.6);right: 0;display: none">
<li style="float: right;margin-left: 50px;margin-right: 5px;"><a>پوشاک ورزشی</a></li>
<li style="float: right;margin-left: 50px"><a>کفش ورزشی</a></li>
<li style="float: right;margin-left: 50px"><a>لباس ورزشی</a></li>
</ul>
</li>
<li style="float: right;margin-left: 50px;margin-top: 5px">
<a>مادر و کودک</a>
</li>
<li style="float: right; margin-top: 5px">
<a>ابزار و الکترونیک</a>
</li>
</ul>
</div>

</nav>

و کد اسکریپت:


<script>
$('#div_menu_level1 li').hover(function () {
$('>ul',this).fadeIn(0);
},function () {
$('>ul',this).fadeOut(0);
}
)
</script>



اما نمیدونم مشکل کجاست که وقتی موس رو روی منوی سطح اول میارم علاوه بر سطح دوم منو سطح سوم هم نشون داده میشه؟
مثلا اگه موس رو بیارم روی "کالای دیجیتال"(سطح اول)،علاوه بر سطح دوم اون(موبایل)سطح سوم هم(گوشی موبایل،Apple و...) هم نشون داده میشه.
ممنون

Derak_Ali
دوشنبه 19 تیر 1396, 15:48 عصر
سلام دوست عزیز ساختاری که برای منو ها استفاده کردین چندین مشکل داره و توضیح همش وقت گیره
ضمن اینکه کد جی کویری شما صرفا زمانی منو رو نمایش میده ک روی عوان قرار داشته باشی و اگر قصد انتخاب یکی از زیر منو های باز شدهرو داشته باشی به محض جابجایی موس بسته میشه و نمیتونی انتخابش کنی

و در نهایت امروزه برای ساخت چنین منویی احتیاج به اسکریپت نویسی نیست و ب راحتی میتونی با سلکتور های css3 کارتو انجام بدی

پیشنهاد میکنم از این لینک (https://www.w3schools.com/css/tryit.asp?filename=trycss_dropdown_navbar) ک یک نمونه مثال هست و این لینک (https://www.w3schools.com/css/css_dropdowns.asp) ک قدم به قدم توضیح داده استفاده کنین

موفق و پیروز