2011-04-10 68 views
1

我使用hoverIntent與購物袋(#bagContainer),並且一切正常。hoverIntent +關閉按鈕(問題與超時?)

function bagOver(){ 
    $(this).find("#bagContainer").stop().fadeTo('fast', 1).show(); 
} 
function bagOut(){ 
    $(this).find("#bagContainer").stop().fadeTo('fast', 0, function() { 
     $(this).hide(); 
    }); 
} 
var bagHoverConfig = { 
    over: bagOver, 
    bagTimeout: 3000, 
    out: bagOut 
}; 
$("#userBox .row:nth-child(2)").hoverIntent(bagHoverConfig); 

但我要包內添加一個「額外」的關閉按鈕(#bagCollapser),是這樣的:

$("#bagCollapser").click(function() { 
    $('#bagContainer').hide(); 
}); 

它關閉#bagContainer,但它似乎有一個與hoverIntent衝突:

  1. 按鈕隱藏袋,但隨後,bagTimeout後,再次hoverIntent
  2. 隱藏它,如果袋子已經通過按鈕關閉,在hoverIntent的超時/延遲已經過去之前它不能再顯示...

任何想法?

非常感謝!

回答

0

我有同樣的問題,我使用hoverIntent來顯示megamenu。 這裏面megamenu我創建了一個關閉按鈕:

$("#closebutton").click(function() { 
    $('#megasubmenu').hide(); 
    $('#megasubmenu').closest('li.level0').find('a.level0').removeClass("megahover"); 
}); 

關閉按鈕關閉子菜單,但hoverIntent功能仍然在運行,因爲只要有一個鼠標移動的子菜單會重新出現......