Javascript 鼠标上方的图像被卡住了?

Javascript 鼠标上方的图像被卡住了?,javascript,jquery,toggle,mouseover,mouseout,Javascript,Jquery,Toggle,Mouseover,Mouseout,当您将鼠标悬停在列表上时,将在此页面上显示弹出图像。我注意到图像有时会被卡住,特别是当我点击其中一个链接,然后返回到该页面时,图像仍然可见。然后,当你将鼠标悬停在弹出图像的同一链接上时,它会做相反的操作,它会在鼠标悬停时消失,而不是出现 $("#main").on("mouseover mouseout", "h4", function () { $("#" + $(this).data("img")).toggle(); }); 知道如何防止这种情况吗?我不使用toggle(),而是为mou

当您将鼠标悬停在列表上时,将在此页面上显示弹出图像。我注意到图像有时会被卡住,特别是当我点击其中一个链接,然后返回到该页面时,图像仍然可见。然后,当你将鼠标悬停在弹出图像的同一链接上时,它会做相反的操作,它会在鼠标悬停时消失,而不是出现

$("#main").on("mouseover mouseout", "h4", function () {
$("#" + $(this).data("img")).toggle();
});

知道如何防止这种情况吗?

我不使用
toggle()
,而是为mouseover和mouseout设置单独的处理程序,如下所示:

$("#main").on('mouseover', 'h4', function () {
    $("#" + $(this).data("img")).show();
}).on('mouseout', 'h4', function () {
    $("#" + $(this).data("img")).hide();
});
当您点击
Back
返回历史记录中的页面时,浏览器有时无法预测页面的状态。我不确定是否有办法解决这个问题,但至少这样,你就不会被反向切换卡住


更新 查看这些问题,了解如何防止按下“后退”按钮时图像仍显示:

听起来您所要做的就是向页面添加
unload
事件处理程序,以防止缓存最后一个页面状态。处理程序甚至不需要做任何事情——只要定义它就足够了。大概是这样的:

$(window).bind("unload", function() {});