javascript - 删除后如何启用点击?

标签 javascript

我这里有两个条件, cond1 和 cond2 。如果是 cond1 我将禁用我的 onclick 事件,否则我将启用它。

这是我钓到的:

if(cond1) {
    document.getElementById('mTag').removeAttribute("onclick");
} else {
    document.getElementById('mTag').setAttribute('onclick');
}

问题是一旦 onclick 被禁用,它就不会再次启用。如果是 cond2 ,则必须启用它。我究竟做错了什么?请提出一些解决方案。

最佳答案

你为什么要这么做?无论如何,这都会带来烦人的用户体验。更好的是禁用/启用标签:

document.getElementById('mTag').disabled = cond1;

要阻止点击事件,您必须prevent the event from bubbling upwards .

document.getElementById('mTag').onclick = function(e) {
    if (!e) var e = window.event;
    event.cancelBubble = !cond1;

    ...
};

关于javascript - 删除后如何启用点击?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14194461/

相关文章:

javascript - XSS - 内容安全策略

javascript - 如何attr类

javascript - 无法读取未定义的属性 'value'?

javascript - Angularjs 获取选中的复选框元素

javascript - 基于浏览器的远程资源缓存

javascript - 无法将按钮附加到 jquery

javascript - 自定义信息窗口内容 > Google map

javascript - 为什么 CanvasRenderingContext2D.createLinearGradient() 不是静态函数?

javascript - 如何使用loopback api和angularjs检索最新创建的记录

javascript - 使用 jquery 动态删除项目