ホームページ  >  記事  >  ウェブフロントエンド  >  jqueryでエラーイベントをimgにバインドする問題の解決策

jqueryでエラーイベントをimgにバインドする問題の解決策

黄舟
黄舟オリジナル
2017-06-27 11:23:012436ブラウズ

例:

<img src = &#39;xxxx.jpg&#39; >

$(&#39;img&#39;).error(function(){
    $(this).attr(&#39;src&#39;,"默认图片");
})

テストの結果、元の画像が存在しない場合、ページ上の画像が点滅し続けることがわかりました。この問題を解決するにはどうすればよいですか?

$(window).load(function() { 
  $(&#39;img&#39;).each(function() {    if (!this.complete || typeof this.naturalWidth == "undefined" || this.naturalWidth == 0) { 
      this.src = &#39;http://www.tranism.com/weblog/images/broken.gif&#39;; 
      } 
   });
});

よくわかりませんが、元の画像は xxxx.jpg を参照しているのでしょうか? コードのデフォルトの画像パスも間違っている (つまり、デフォルトの画像が存在しない) 場合、デッドループ に入ります。 Constant onerror

は最初に画像が正常にロードされたかどうかを確認し、失敗した場合は

イベント をバインドするため、点滅し続けます。そして一度交換するだけです。 りー

以上がjqueryでエラーイベントをimgにバインドする問題の解決策の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。