jquery检查图片是否加载

发布于 2024-11-09 07:43:35 字数 316 浏览 0 评论 0原文

可能的重复:
图像加载时的 jQuery 回调(即使图像已缓存)

有没有办法检查图像是否由 jquery 加载?我有一些带有外部源的图像,有时 src指向404页面。有没有办法检查该图像是否已加载?然后我可以将它从 dom 中删除。

谢谢。

Possible Duplicate:
jQuery callback on image load (even when the image is cached)

Is there a way to check if image is loaded by jquery? I have some images with external src and sometime
src points to 404 page. Is there a way to check if that image is loaded? and then I can remove it from dom otherwise.

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

孤檠 2024-11-16 07:43:35

jQuery 有一个函数可以处理这个问题,看看 .error()

例如您可以将 .error() 处理程序附加到所有图像,并在存在以下情况时显示其他内容错误,就像源不再存在:

$('img').error(function() {
    $(this).hide();
}).attr("src", "missing.jpg");

这是一个演示

jQuery has a function to deal with this, take a look at .error()

So for example you could attach an .error() handler to all images and display something else if there is an error, like the source no longer exists:

$('img').error(function() {
    $(this).hide();
}).attr("src", "missing.jpg");

Here is a demo

尬尬 2024-11-16 07:43:35

@Scoobler 的想法是正确的,但实现是错误的。

$(function ()
{
    $('img').error(function()
    {
        $(this).attr('src', 'https://i.sstatic.net/THJzu.gif');
    });
});

.error() 绑定必须在文档就绪时进行 - 窗口加载为时已晚。

演示:http://jsfiddle.net/mattball/EebmC/

@Scoobler has the right idea, but the wrong implementation.

$(function ()
{
    $('img').error(function()
    {
        $(this).attr('src', 'https://i.sstatic.net/THJzu.gif');
    });
});

The .error() binding must take place on document ready - window load is too late.

Demo: http://jsfiddle.net/mattball/EebmC/

懵少女 2024-11-16 07:43:35

是的,你可以像这样使用 error 事件......

$('#imageId')
  .error(function() {
    alert('Something bad happened.')
  })
  .attr("src", "image.gif");

yes you can use error event like this....

$('#imageId')
  .error(function() {
    alert('Something bad happened.')
  })
  .attr("src", "image.gif");
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文