在鼠标悬停图像卡住?

时间:2013-06-27 07:26:56

标签: javascript jquery toggle mouseover mouseout

在此页面http://www.londonsitedesign.co.uk/home.html上,当您将鼠标悬停在列表上时会显示弹出图片。我注意到图像有时会卡住,特别是如果我点击其中一个链接然后返回到该页面,图像仍然可见。然后,当你将鼠标悬停在弹出图像的同一链接上时,它会反过来,它会逐渐消失而不是出现吗?

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

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

1 个答案:

答案 0 :(得分:0)

我没有使用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() {});