Плагин jQuery hoverIntent показывает / скрывает div при родительском наведении, но продолжает отображаться при наведении

У меня есть кнопка, которая при наведении курсора мыши (мыши) отображает div прямо под ним. Когда зависший (mouseout), div исчезает.

Это все работает хорошо и хорошо, но теперь мне нужно держать div под кнопкой, показывающей, наводит ли пользователь курсор на этот div (чтобы взаимодействовать с контентом внутри div).

Сейчас это невозможно, так как div исчезнет сразу после того, как вы наведите курсор мыши на кнопку, которая вызывает отображение div.

Я использую плагин hoverIntent jQuery для этого.

// This is the button that when hovered
// triggers the div below it to show
$('#hoverMeToShowHideDiv').hoverIntent(function () {

$("#displayDiv").stop().slideDown('slow');
},
function () {
    // I don't want the div to hide if user hovers over it
    $("#displayDiv").stop().slideUp('slow');
});

HTML:

<div id="hoverMeToShowHideDiv"> // some stuff </div>
<div id="displayDiv"> 
    // some other stuff that I want to 
    // keep showing if users hover over it 
</div>

1 ответ

Решение

Вставьте еще один div #wrapperDiv вокруг кнопки и #displayDiv и прикрепить hoverIntent к #wrapperDiv а не кнопка:

$('#wrapperDiv').hoverIntent(function () {
   $("#displayDiv").stop().slideDown('slow');
},
function () {
   // I don't want the div to hide if user hovers over it
   $("#displayDiv").stop().slideUp('slow');
});

HTML:

<div id="wrapperDiv">
   <div id="hoverMeToShowHideDiv"> // some stuff </div>
   <div id="displayDiv"> 
      // some other stuff that I want to 
      // keep showing if users hover over it 
   </div>
</div>
Другие вопросы по тегам