javascript - Jquery 禁用 mousedown 事件而不丢失与事件关联的函数

标签 javascript jquery events

我试图禁用元素的 mousedown 事件,然后在不重新定义与该事件相关的函数的情况下启用它。 当我执行 $(this).off(mousedownEvent) 时,相关事件丢失了,我不想使用 $(this).on(mousedownEvent, function()) 启用它。 有办法吗?

最佳答案

你不能只使用一个外部函数吗?

function doStuffOnMouseDown(evt) {
    console.log('stuff happens here');
}

/* ENABLE */
$(this).on('mousedown', doStuffOnMouseDown);

/* DISABLE */
$(this).off('mousedown', doStuffOnMouseDown);

/* RE-ENABLE */
$(this).on('mousedown', doStuffOnMouseDown); // no suprise, it's just the same ?

这几乎就是添加和删除事件的方式,而无需重新定义整个函数体

关于javascript - Jquery 禁用 mousedown 事件而不丢失与事件关联的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45964885/

相关文章:

javascript - 如何删除 keydown 上的悬停类?

javascript - 交易已恢复 : function returned an unexpected amount of data while testing with ether. js(uniswapv2router.swapExactTokensForTokens 函数)

javascript - 在 Bootstrap 中切换菜单

javascript - 在 iframe 元素上发生单击事件时,在 Jquery 中加载另一个 html 页面

jquery - 隐藏除其中特定类之外的类

javascript - 将 JavaScript 日期转换为 .NET 日期时间

javascript - 日期选择器后模糊事件

javascript - 如何在 Angular 中使用 controllerAs 语法时监听 $destroy

javascript - 动态创建的元素上的事件绑定(bind)?

internet-explorer - contenteditable 的 IE 输入事件?