Javascript 从 img 标签中删除 onclick 事件

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/10712219/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-24 02:37:22  来源:igfitidea点击:

Remove onclick event from img tag

javascript

提问by jbcedge

Heres my code:

这是我的代码:

<div id="cmdt_1_1d" class="dt_state1" onclick="sel_test(this.id)">
<img id="cmdt_1_1i" onclick="dropit('cmdt_1_1');" src="/site/hitechpackaging/images/items/bags_menu.jpg ">
<span class="dt_link">
<a href="javascript://">BAGS</a>
</span>
</div>

Unfortunately I cannot modify this file, is there a way using javascript to disable the onclick from the img tag only.

不幸的是,我无法修改此文件,有没有办法使用 javascript 仅从 img 标签禁用 onclick。

I was using this script but it disable the onclick event from all images. But i want only from this component

我正在使用这个脚本,但它禁用了所有图像的 onclick 事件。但我只想要这个组件

var anchorElements = document.getElementsByTagName('img');
// for (var i in anchorElements)
 //   anchorElements[i].onclick = function() {
       // alert(this.id);
 //       return false;
 //   }

Any ideas will be appreciated.

任何想法将不胜感激。

Edited: Is there a way to stop the function dropit from executing, is it possible using javascript. On page load, etc.

编辑:有没有办法阻止函数 dropit 执行,是否可以使用 javascript。在页面加载等。

another option is can i rename the img file using javascript??

另一种选择是我可以使用 javascript 重命名 img 文件吗?

回答by Bergi

document.getElementById('cmdt_1_1i').removeAttribute("onclick");

回答by Gabe

var eles = document.getElementById('cmdt_1_1d').getElementsByTagName('img');
for (var i=0; i < eles.length; i++)
   eles[i].onclick = function() {
     return false;
   }

回答by RobG

Lots of answers, but the simplest is:

答案很多,但最简单的是:

document.getElementById('cmdt_1_1i').onclick = '';

回答by JKing

try something like this:

尝试这样的事情:

var badImage = document.getElementById("cmdt_1_1i");
badImage.onclick = null;
badImage.addEventlistener("click",function(e){
    e.preventDefault();
    e.stopPropagation();
    return null;
},true);