javascript - 组合 jquery 函数 - on() hover/mouseenter/mouseleave

标签 javascript jquery

我有一系列元素(我们称它们为“.my-elements”)- 一些在准备好文档时加载,而另一些稍后通过分页脚本加载。

我想根据鼠标是否在这些元素上设置一个变量。下面的代码有效,但我怀疑有更好的方法...我可以这样做,这样我只需要引用一次 DOM 吗?

$(document).on('mouseenter','.my-elements', function(){
    mouse_is_inside = true;
});

$(document).on('mouseleave','.my-elements', function(){
    mouse_is_inside = false;
});

谢谢!

最佳答案

您可以将两者绑定(bind)在一起并检查 event.type :

$(document).on('mouseenter mouseleave', '.my-elements', function (ev) {
    mouse_is_inside = ev.type === 'mouseenter';
});

或者,如果您想将它们分开,.on还有另一种接受事件映射的语法:

$(document).on({
    mouseenter: function () {
        mouse_is_inside = true;
    },

    mouseleave: function () {
        mouse_is_inside = false;
    }
}, '.my-elements');

关于javascript - 组合 jquery 函数 - on() hover/mouseenter/mouseleave,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9812062/

相关文章:

javascript - 有没有办法将 Jupyter 笔记本集成到我的 Web 应用程序中

javascript - Pinterest 分享 HTML 链接错误

jquery - Div 折叠更改位置

jquery - 恢复匿名 sinon.stub

jquery - Vimeo API 文件上传不断返回 308 响应

javascript - 如何从 JavaScript 中的 PHP 数组中获取值?

javascript - 使用 JQuery 或 JavaScript 检查本地驱动器中的现有文件。

javascript - 在 PHP 或 JS 中自动从文本和默认图像创建图像文件?

jquery - 网站不以手机为中心

javascript - Jquery/Php 聊天脚本和我有一些问题