jqueryマウスオーバーマウスアウトメニューを使用したMouseOutメニュー
-
03-10-2019 - |
質問
誰かがこの簡単なコードで私を助けてくれますか。私はまだJSのnoobであり、何が間違っているのかわかりません。基本的に、マウスオーバーメニューを作成しようとしています。
function showQuickLinks() {
//show the menu
}
function hideQuickLinks() {
//hides the menu
}
//button mouseover
$("#quick-links-dd").mouseover(function() {
showQuickLinks();
});
var mnuTimeout;
//clears timeout when it rolls over the button
$("#quick-links-dd").mouseover(function () {
clearTimeout(mnuTimeout);
})
//$("#quick-links) - quick links container
//hides the menu when the mouse is not over the container
$("#quick-links").mouseout(function () {
mnuTimeout = setTimeout("hideQuickLinks()",1000);
});
マウスオーバーは機能しますが、マウスがリンクコンテナの外側にあるときにコードを実行しません。
解決
var mnuTimeout = null;
$(function() {
$("#quick-links-dd").hover() {
clearTimeout(mnuTimeout);
showQuickLinks();
}, function() {
mnuTimeout = setTimeout(hideQuickLinks,1000);
});
});
他のヒント
あなたは「?」を逃していますか?
("#quick-links").mouseout(function () {
mnuTimeout = setTimeout("hideQuickLinks()",1000);
});
失われたオンマウスアウトイベントで断続的な問題がありました。私の最終的な解決策は、周囲の要素にマウスオーバーイベントを追加し、ポップアップもキャンセルすることでした。
所属していません StackOverflow