Jquery mouseover mouseout mouxout Menu с использованием Settimeout
-
03-10-2019 - |
Вопрос
Может кто-нибудь помочь мне с этим простым кодом .. Я все еще нуб на JS, и я не знаю, что я делаю не так. В основном я пытаюсь сделать меню мыши.
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);
});
У меня были прерывистые проблемы с потерянными событиями OnMouseout. Мое возможное решение состояло в том, чтобы добавить мероприятия мыши на мыши в окружающие элементы, и у них также отменить всплывающее окно.
Не связан с StackOverflow