我試圖創建菜單,當鼠標懸停在菜單名稱上時,下拉菜單。由於名稱和菜單div不相鄰,我需要一種方法來延遲菜單消失,因此用戶可以從名稱移動到菜單本身。我爲此使用了setTimeout。一旦懸停在菜單上,我需要它保持打開狀態,直到鼠標離開,之後它應該隱藏。setTimeout/clearTimeout問題,似乎並沒有重置
我試過的是一個完整的混亂。不知道如何解決它。因爲setTimeout在初始的mouseover內部,所以定時器在自身上循環......但是如果我把它放在其他地方,setTimeout似乎不起作用。
下面的代碼:
$(document).ready(function() {
$('.headermenushow').mouseover(function() {
$(this).next('.dropmenu').show(0, function() {
timer = setTimeout(function() {
$('.dropmenu').hide(10);
}, 2000);
});
$(this).next('.dropmenu').mouseover(function() {
clearTimeout(timer);
});
});
});
這裏是展示我要如何使用它的一個簡略的jsfiddle:
任何幫助將是巨大的。真的不知道如何得到這個工作更好...
你可以爲我們提供的jsfiddle了點。 –
我們需要查看您的HTML並更準確地瞭解您要完成的工作。就目前而言,很明顯,您當前的代碼存在很多錯誤,但不清楚您正在嘗試執行的操作。 – jfriend00
增加了jsfiddle - 應該演示我如何使用這個 – user3180105