您的位置:首页 > 其它

解决IE8,IE9 在onmouseover下闪烁,无法正常滚动的问题

2017-05-11 11:08 375 查看
根据http://blog.sina.com.cn/s/blog_6261f86901011mub.html 学习找到方法。

问题:

在IE11兼容模式下的ie8,不会出现图层闪烁,无法下拉到底的问题。

在自带IE8、IE9浏览器下,会出现问题。

在去掉onmouseover时,不会出现问题。

问题现象:



解决核心原理:增加延迟时间。

旧代码:

function showOrHideTarget(targetId, isShow) {
if (isShow) {
$("#" + targetId).removeClass('dis_hide');

} else {
$("#" + targetId).addClass('dis_hide');
}
}


修改后的代码:

function showOrHideTarget(targetId, isShow) {
if (isShow) {
if (!$("#" + targetId).hasClass("dis_hide")) { // 设置Class是为了判断显示层是否正在显示
clearTimeout(time);
}
if (targetId != null && targetId != 0) {
// 做你想要的操作
$("#" + targetId).removeClass('dis_hide');
}

} else {
if (!$("#" + targetId).hasClass("dis_hide")) {
time = setTimeout(function() {
$("#" + targetId).addClass('dis_hide');
}, 500);
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: