我有一個表單選擇替換,它使用jQuery在用戶單擊鏈接時在UL列表中顯示選項。點擊選項可以更改隱藏的表單值並隱藏列表。一切工作正常,但如果用戶點擊列表或圖像以外的地方,我想列表隱藏。它看起來像我需要清除切換狀態並隱藏列表,但我一直無法做到這一點。 (由delicious.com多選項的搜索的啓發。)清除切換狀態
$('ul.left').hide();
$('ul.downarrow li a').click(function(){
$('ul.left').toggle();
});
$('ul.left li a').click(function() {
$('ul.left').hide();
$('#sitesearchquery').val($(this).attr('name'));
});
<ul class="downarrow">
<li><a style="cursor:pointer; display:inline-block; width:20px; height:20px; background: url(images/down_arrow.gif);"></a>
<ul class="left">
<li><a href="#" name="mysite">My Site</a></li>
<li><a href="#" name="othersite">Other Site</a></li>
</ul>
</li>
</ul>
...
<input type="hidden" name="sitesearch" id="sitesearchquery" value="mysite" />
我還沒有得到進入測試這個還只是檢查出的jQuery沒有選擇,你可以做$( ':不是(ul.left:孩子)')。點擊(函數(){ $('ul.left')。hide();}) – Luke 2010-06-25 21:36:07