【发布时间】:2015-04-05 16:17:37
【问题描述】:
如果点击事件功能与拖动事件功能都附加到同一个对象,有没有办法将它们分开?
我正在添加一个点击类。我的应用程序的目标是,当用户“点击”和项目时,它的可拖动功能被禁用。
相反,如果用户拖动项目,则不应触发点击。
这可能吗?
这是我对以下代码的小提琴...
html:
<div class="buttonBox"></div>
jQuery:
var bool = false;
var buttonBox = $(".buttonBox");
buttonBox.off("click");
buttonBox.on("click", function (event, ui) {
console.log("class Added");
$bool = true;
var self = $(this);
self.addClass("selectedBox");
});
buttonBox.draggable({
distance: 40,
disabled: bool,
revert: "invalid",
revertDuration: 400,
refreshPositions: true,
});
【问题讨论】:
-
你可以试试 .on() 和 .off() api.jquery.com/off
-
在您发布的代码中
buttonBox.off("click");没有任何意义 -
我们正在查看来自更大应用程序的示例。我已经读到您应该将前面的 .off() 与您的 .on() 配对,以便在添加新的点击事件之前删除您之前的点击事件。
标签: jquery click draggable drag