jQuery . Однако, если пользователь зависает до того, как документ будет готов, возникнут проблемы
Приведенный ниже код прекрасно работает, за исключением одного условия. Если пользователь наводит указатель мыши на элемент до того, как документ будет готов, то slideToggle не синхронизируется (или переворачивается).
В результате #logged_in_nav отображается при наведении мыши, а при наведении курсора поле исчезает. Какой простой способ это исправить?
$("#logged_in_box").hover(function(){
$("#logged_in_nav").stop(true, true).slideToggle("fast");
$(this).addClass("logged_in_box_hover");
}, // hover over
function() {
$("#logged_in_nav").stop(true, true).slideToggle("fast");
$(this).removeClass("logged_in_box_hover");
} // hover out
); // hover
1 ответ
Решение
Не использовать slideToggle
, использование slideDown()
(документы) и slideUp()
(документы), поэтому направление явно связано с типом события.
$("#logged_in_box").hover(function(){
$("#logged_in_nav").stop(true, true).slideDown("fast");
$(this).addClass("logged_in_box_hover");
}, // hover over
function() {
$("#logged_in_nav").stop(true, true).slideUp("fast");
$(this).removeClass("logged_in_box_hover");
} // hover out
); // hover