Я полагаю, вы используете такой код:
$("a").hover(function () { // Enter
$("div").show();
}, function () { // Leave
$("div").hide();
});
В этом случае ваше предположение верно. Если div
находится над a
, то при нажатии div
происходит отпуск мыши, поскольку мышь начинает работать с div
, а не с a
. Затем div
скрывается, мышь снова вводит a
... И все начинается в другой раз.
Если вы можете избежать появления надписи div
(например, с z-index), это будет проще.
В противном случае, я предлагаю вам сделать что-то вроде этого:
$("a").mouseenter(function () {
$("div").show();
});
$("div").mouseleave(function () {
$("div").hide();
});
Если ваша мышь всегда будет над div
, когда она открыта, то она может закрыться, если мышь уйдет.