gpt4 book ai didi

javascript - 附加到子项时删除 onclick

转载 作者:行者123 更新时间:2023-11-30 17:16:01 24 4
gpt4 key购买 nike

我有以下代码:

layoutOverlaysBldg = $("#layout-overlays-bldg")
layoutOverlaysBldg.on("click", "div", function(event) {
var floor;
console.log("floornum: " + this.dataset.floornum);
floor = parseInt(this.dataset.floornum);
...
$("#choose-floor").fadeOut();
$("#choose-apt").fadeIn();
});

稍后 - 基于我从数据库中取回的数据 - 我想删除一些 .on("click", "div", ...) 中的一些div。我已经有了获得正确 div 的选择器,但我不知道如何删除点击事件。我在选择正确的 div 后尝试了 .off("click") 但它没有效果。

最佳答案

此问题是因为您使用的是委托(delegate)事件。您可以为所有子元素添加或删除事件,但不能为给定 div 选择器的单个子元素添加或删除事件。

考虑到这一点,完成所需操作的最简单方法是根据类添加事件,然后根据需要在子项上添加和删除该类。像这样:

layoutOverlaysBldg = $("#layout-overlays-bldg")
layoutOverlaysBldg.on("click", "div.clickable", function(event) {
// your code...
});

然后您可以通过添加或删除 .clickable 类来启用/禁用子 div 上的事件。

关于javascript - 附加到子项时删除 onclick,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26114239/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com