2011-08-09 43 views
0

我有一個水平導航欄,這是一個無序列表與錨標記。它目前使用jQuery的懸停(mouseover和mouseout)來顯示每個LI中的下拉導航。觸發jQuery懸停()通過錨點顯示下拉內含LIs?

當鼠標懸停在錨點標籤上時會觸發LI,而不是觸發下拉菜單而不是觸發下拉菜單?當我將它改爲錨點時,下拉菜單在鼠標懸停時總是消失,但當我將LI設置爲懸停()的目標時它工作正常(我猜是因爲所有的下拉代碼被包裹在LI中,因此光標仍然懸停在LI上)。

由於設計原因,我需要這樣設置它,所以沒有辦法改變它。我需要懸停()只是從錨而不是LI觸發。

+1

你可以在jsfiddle上託管代碼嗎?不能想象這個問題 – Baz1nga

回答

1

你可以通過錨懸停代碼修改類的LI的。當您離開LI時將其改回。

1

如果我理解正確,那麼您遇到的問題是在您將鼠標放到它之前下拉框關閉。這可能是因爲錨標記和下拉菜單之間存在差距。

那麼如何將開瓶器更改爲a-tag,但是您添加了一個小計時器,即使您將鼠標移出,也可以將下拉列表打開一秒或更多秒?無論如何,這樣的增加是很好的,如果你不小心滑出導航欄並且因爲關閉而不得不返回時,會變得惱人。

編輯:另外,是的,JSFiddle它。

1

嘗試把span標記您的錨點:

<a href='#'><span>test</span></a> 

a span { 
    display: block; 
}