我在IE9中使用以下代码的弹出式div有问题:
<li id="info001" class="listInfo" onmouseover="ShowPreview(this);" onmouseout="HidePreview();">
我的HidePreview检查以确保鼠标不在listItem上或预览本身上,如下所示:
function HidePreview() {
if (!($('#thePreview').is(':hover') || $('#info001').is(':hover'))) {
$('#thePreview').hide();
}
}
这在Chrome和Firefox中运行良好,但在IE9中,当我移动listItem和预览时,预览开始闪烁,然后当我单独移动预览时,它会被隐藏。
有什么方法可以避免这种情况吗?
编辑:为清楚起见,thePreview div与info001 li重叠,足以轻松地在它们之间移动鼠标。
答案 0 :(得分:0)
尝试做这样的事情:
var $thePreview = $("#thePreview");
$(".listInfo").hover(
function () {
$thePreview.show();
},
function () {
$thePreview.hide();
}
);
您仍然可以使用该代码,您只需要将伪事件从悬停更改为mouseenter mouseleave(如果您运行的是1.9+)。有关详细信息,请参阅此处:jquery.com/upgrade-guide/1.9/#hover-pseudo-event