如:
<img src = 'xxxx.jpg' > $('img').error(function(){ $(this).attr('src',"默认图片"); })
經過測試發現,如果原始圖片不存在的話,頁面上的圖片就會一直閃爍,如何解決這個問題?
$(window).load(function() { $('img').each(function() { if (!this.complete || typeof this.naturalWidth == "undefined" || this.naturalWidth == 0) { this.src = 'http://www.tranism.com/weblog/images/broken.gif'; } }); });
沒太懂,原始圖片是指xxxx.jpg嗎?你這個程式碼如果預設圖片路徑也是錯誤的話(也就是預設圖片也不存在)就進入死循環了,所以一直閃啊閃,因為不斷的onerror
先檢查圖片是否載入成功,然後如果失敗的話再綁定事件。而且替換一次就好了。
<img src="xxxx.jpg" alt="" /><script>jQuery(document).ready(function(){ jQuery('img').each(function(){ var error = false; if (!this.complete) { error = true; } if (typeof this.naturalWidth != "undefined" && this.naturalWidth == 0) { error = true; } if(error){ $(this).bind('error.replaceSrc',function(){ this.src = "default_image_here.png"; $(this).unbind('error.replaceSrc'); }).trigger('load'); } }); });</script>
以上是jquery給img綁定error事件的問題解決的詳細內容。更多資訊請關注PHP中文網其他相關文章!