javascript - 如何使用 JQuery 将鼠标悬停在元素上 x 秒时触发点击?

标签 javascript jquery

我知道这个问题已被提出并得到解答 here已经,但是设置计时器可以使用hover()函数。

由于我的元素是动态创建的,因此它需要两个不同的函数:一个在 mouseenter 上,另一个在 mouseleave 上。

有人对这个特殊需求有深入的了解吗?

PS:我知道有一个名为hoverIntent的插件,但我不想使用任何插件!

最佳答案

尝试

$(document).on({
    mouseenter: function () {
        var $this = $(this);
        var timer = setTimeout(function () {
            $this.click();
        }, 2000)
        $this.data('clicktimer', timer)
    },
    mouseleave: function () {
        clearTimeout($(this).data('clicktimer'))
    }
}, '#test');

演示:Fiddle

关于javascript - 如何使用 JQuery 将鼠标悬停在元素上 x 秒时触发点击?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18943579/

相关文章:

javascript - 如何检测特定 div 何时不在 View 中

javascript - 基于 rowspans 修改行也使用 jquery 修改

javascript - 是否可以根据时间进行重定向?

javascript - 在 Node.js 中安装 Postgres 模块时出错以及其他 2 个 node.js 问题

javascript - 直接包含文本的元素的 jQuery 选择器?

JQuery UI : How to get the selected tab to change color without loading jqueryui. CSS

Javascript 停止运行且没有错误消息

jQuery:单击时菜单出现/消失

javascript - 在一页上使用 anchor 和 jquery 加载正确的 url

javascript - html2canvas插入多个元素渲染