大家好!jQuery隱藏/顯示2菜單
我遇到以下問題:我有一個產品的菜單和另一個產品的另一個菜單。它是這樣的:
Product1 |產品2
主頁選項1選項2選項3 | Option1 Option2 Option3
其中前3個選項用於Product1,後3個選項用於Product2。我只需要看一個產品的菜單。
我的HTML是這樣的不便(簡化當然):
<div class="products">
<a href="#" id="product1">Product1</a>
<a href="#" id="product2">Product2</a>
</div>
<ul id="menu1">
<li>Option1</li>
<li>Option2</li>
<li>Option3</li>
</ul>
<ul id="menu2">
<li>Option1</li>
<li>Option2</li>
<li>Option3</li>
</ul>
和jQuery去水木清華這樣的:
$(document).ready(function() {
$("#product1").addClass("active");
$("#menu2").hide();
$("#product2").click(function() {
$("#menu1").hide();
$("#menu2").show();
$("#product1").removeClass("active");
$("#product2").addClass("active");
});
$("#product1").click(function() {
$("#menu2").hide();
$("#menu1").show();
$("#product2").removeClass("active");
$("#product1").addClass("active");
});
});
問題:當我第一次加載網頁一切正常。當我在#產品2單擊例如,它是在函數中指定的一切:
$("#product2").click(function() {
$("#menu1").hide();
$("#menu2").show();
$("#product1").removeClass("active");
$("#product2").addClass("active");
});
,但它也執行了前兩行:
$("#product1").addClass("active");
$("#menu2").hide();
而且我同時獲得#產品1和#產品2處於活動狀態並且兩個菜單都隱藏有任何想法嗎? 在此先感謝!
看起來你的工作爲例精... http://jsfiddle.net/d7DrG/ – Okazari
它上的jsfiddle,但它在我的web項目不一樣。可能我應該提到它在ASP.NET Web Forms項目中。這種行爲對我來說也很奇怪,但是我找不到它背後的原因。 – user2642287
你可以嘗試debbuging與一些中斷點,一步一步看你的代碼在點擊後去哪裏?這段代碼非常簡單,錯誤仍然很奇怪。 – Okazari