通常会这样做..
$("img").error(function(){$(this).hide();});
但是在它上线时它不起作用
$("img").live("error",function(){$(this).hide();});
问题在于,对于那些生成ajax的图像,我无法隐藏破碎的图像。
答案 0 :(得分:1)
您可以在将图像添加到DOM时添加事件处理程序:
$.get(urlHere, function(htmlData) {
var output = $(htmlData).find('img').error(function () {$(this).hide();}).end();
$(<selector>).html(output);
});
以下是演示:http://jsfiddle.net/3nXcS/2/
<强>更新强>
当您console.log()
e.bubbles
变量时,它会返回false
。因此,您无法使用需要冒泡的绑定方法(.delegate()
,.live()
)。
答案 1 :(得分:0)
$("img").live
方法应该有用,如果没有,你可以尝试livequery
(Livequery)
尝试,
$("img").livequery('error', function(){$(this).hide();})