简体   繁体   English

在JavaScript中添加事件全局回调

[英]Add event global callback in javascript

I want to add an onerror function on div.circle_thumb>img event. 我想在div.circle_thumb>img事件上添加onerror函数。

Now, I'm added `onerror event each img tag like this. 现在,我在每个img标签上都添加了onerror事件,如下所示。

<div class="circle_thumb" ><img src="some/url" onerror="this.src=url/to/replaced" /></div>

But this bothering me too much. 但是,这太让我困扰了。

Can I add this callback globally? 我可以在全局添加此回调吗?

You can use javascript like this 您可以像这样使用javascript

[].forEach.call(document.querySelectorAll('div.circle_thumb>img'), function(img) {
    img.addEventListener('error', function(e) {
    this.src='../img/logo.png';
  });
});

or in ES2015+ 或在ES2015 +

Array.from(document.querySelectorAll('div.circle_thumb>img')).forEach(img => img.addEventListener('error', e => img.src='../img/logo.png'));

jQuery version: jQuery版本:

jQuery.each($('div.circle_thumb > img'), function(index, image){
    image.addEventListener('error', function(e) {
        image.src='../img/logo.png';
    });
});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM