从img标签中删除onclick事件

时间:2012-05-23 01:11:53

标签: javascript

继承我的代码:

<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>

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

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

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

任何想法都将受到赞赏。

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

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

4 个答案:

答案 0 :(得分:26)

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

答案 1 :(得分:11)

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

答案 2 :(得分:5)

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

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

答案 3 :(得分:0)

尝试这样的事情:

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