在页面加载时禁用鼠标悬停功能3秒钟
disable mouseover-ability on page load for 3 seconds
我看过一些关于页面加载后交互延迟的类似帖子,但似乎找不到任何关于经典a:hover禁用的内容。
问题是JS的加载速度很可能比CSS慢,而破解CSS并不能解决这个问题。
情况
我有一个主页动画。在页面加载中,我从左边输入了一堆图像,从右边输入了一个div的绝对锚定标签(每行约2个案例),它们都在在中间滑动和相交。页面加载后,我设置了一个计时器来遍历图像堆栈,并高亮显示相应的锚点标签。
问题是,当用户悬停在任何一个锚点标签上时,这个计时器就会中断,当这种情况发生时,相应的图像就会淡入。这种交互可能就在页面加载时。
是否有任何可能的方法在页面加载/延迟时禁用锚点标签a:hover?
我尝试过的
我不能简单地删除a:hover类并将其替换为另一个背景色:transparent的类,因为我的JS仍然使用onHover函数(我可能只针对更改后的类使用onHove。)
当鼠标不小心悬停在上时,我可以在mouseenter上向页面加载上的每个锚标记发出警报
//on page load, disable mouse-over ability on anchor tags
var disableOnLoad = function (ev) {
var target = $(ev.target);
var casesId = target.attr('id');
//if mouse is over one of the cases
if (target.is(".cases")) {
//disable CSS a:hover
$(this).removeClass('homeText a:hover');
}
}
我可以尝试的另一件事是调用setTimeOut(function(){onHover()),这样会有延迟,但这也会在页面加载后生效
有什么建议吗?
CSS:
#blocker{
position:fixed;
width:100%;
height:100%;
left:0;
top:0;
right:0;
bottom:0;
z-index:9999;
}
JS:
setTimeout(function(){
$('#blocker').remove();
}, 3000);
HTML:
<body>
<div id="blocker" ></div>
<!-- your stuff -->
确保blocker-div靠近body标记,以确保没有捕获/冒泡问题。
如果您的页面一开始链接没有用锚标记包装,并且在3秒钟后使用setTimeout-onLoad附加标记,会怎么样?
尚未对此进行测试,但阻止默认设置可能适用于您"
$("a").mouseover(function(event) {
event.preventDefault();
// Run any other needed code here
});
(function(){
$("a").unbind('mouseover');
}).delay(2000); // delay 2 seconds
最好在您知道所有图像都已加载后运行解除绑定代码
您可能还想将选择器从所有a标记修改为.class
讨论有点晚,但为了防止对其他人有帮助,我通过将pointer-events: none
添加到CSS中的body
元素来解决我的问题(使用一个名为pointer-none
的类,然后在延迟后用JavaScript将其删除。
var timeout;
window.onload = function(){
timeout = setTimeout(function(){
document.querySelector('body').classList.remove('pointer-none');
}, 1500);
}
- 当鼠标悬停在文本中的单词上时显示警报
- 如何在鼠标悬停时在另一个图像上滑动图像.
- 鼠标悬停事件影响列表中所有行中的按钮,而不仅仅是特定按钮
- 在鼠标悬停时展开列表
- jQuery悬停在没有鼠标悬停的情况下启动
- 鼠标悬停时如何居中放大背景图像
- 使用鼠标悬停JavaScript/HTML显示文本
- 如何在MVC3中显示鼠标悬停在文本上的部分视图
- d3.js鼠标悬停鼠标输出问题
- 如何在鼠标悬停时将对象从起始位置移动到结束位置,然后在鼠标悬停后再次移动
- 鼠标悬停时播放随机轨迹
- 鼠标悬停时的css转换
- 将鼠标悬停在同级元素上的 jquery 上轻拂
- 将鼠标悬停在Angular JS中的一个元素上,并将Class添加到另一个元素中
- aspx中鼠标悬停时横向扩展DIV
- ajax鼠标悬停和鼠标悬停脚本
- 在鼠标悬停处隐藏图像
- 如何停止地图移动时,鼠标悬停在标记在谷歌地图API 3
- 通过鼠标悬停向上或向下滑动的图片
- 鼠标悬停时更改按钮的 CSS