javascript - 使用 Javascript 加载页面时检测鼠标是否在元素上

标签 javascript

我有一个图像,我想在鼠标悬停时触发某些行为,我有一个 mouseover 和 mouseout 方法,但是如果您在页面加载时碰巧将鼠标悬停在图像上,则 mouseover 方法永远不会触发直到您离开图像并返回。

有没有一种方法可以检测鼠标是否在运行中位于元素上,而无需鼠标离开元素,然后移至元素上以触发 JS 鼠标悬停事件?比如在 Javascript 中是否有 document.getElementById("blah").mouseIsOver() 类型的函数?

最佳答案

我相信这无需用户采取任何行动即可实现。当您的页面加载时,将 mouseover 事件绑定(bind)到您的图像并隐藏您的图像(即使用 CSS display:none)。使用 setTimeout() 在几毫秒后再次显示它(10 应该足够了)。偶数应该被解雇。

如果您不想在您的图像上造成“轻弹”效果,您可以尝试使用一些临时元素,将事件附加到它,并将该事件委托(delegate)给您的图像。

我不知道这是否是跨浏览器的解决方案,但它在我的 Firefox 3.0 控制台上有效;)

关于javascript - 使用 Javascript 加载页面时检测鼠标是否在元素上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1521443/

相关文章:

javascript - Parse SDK for javascript 如何发送 ping 到解析服务器以验证 Web 客户端和服务器之间的连接

javascript - 下拉菜单中的输入框

javascript - 可以向 YouTube iframe 添加 onclick 事件吗?

javascript - 如何使用nodejs将变量导出到其他文件?

php:空数组元素什么时候不为空?

php - 如何将文件内容实时流式传输到浏览器

javascript - 如何使用 Node.js 和 convnetjs 从一排数字中深度学习并预测一个新值?

javascript - 在一些 jquery ajax 之后如何做其他 jquery 事情

javascript - 验证 JavaScript 在 jQuery Mobile 中不起作用

javascript - jQuery UI Dialog 而不是 Rails 3 数据确认属性的 alert()