javascript - jquery错误函数延迟执行

标签 javascript jquery

我使用下面的错误函数来隐藏似乎未加载的外部图像。 然而图像很容易被隐藏,我认为这是因为该函数执行得很快。 Jquery中有没有办法延迟函数两秒?

$(".display li img").error(function () {
    $(this).parent().parent().hide("fast");
    pos3 = $(this).attr("id"); 
    reportrefcam();
});

最佳答案

我可能会从另一边做。等待页面 load 事件,然后检查所有图像。检查的意思是,查看图像是否有宽度高度,如果没有,则很可能已损坏。

$( window ).on('load', function() {
    $( '.display li img' ).each(function() {
        if( (!this.width || !this.height) ) {
            pos3 = $( this ).attr( 'id' ); 
            reportrefcam();

            $( this ).hide( 'fast' );
        }
    });
});

演示:http://jsfiddle.net/vLC7U/

当加载整侧的所有图像+ iframe 时,窗口 load 事件最终将触发。因此,可以肯定的是,如果图像此时没有尺寸,则它已损坏。

关于javascript - jquery错误函数延迟执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8294524/

相关文章:

javascript - 在搜索框中输入并重定向到另一个页面

javascript - 无法从动态创建的按钮获取文本

javascript - javascript中如何知道函数参数的类型

javascript - 如何在 Javascript 中针对每个索引将某个数组拆分为多个数组

javascript - Fastify - 如何使用 fastify-multipart 获取非文件字段

php - 通过 jquery ajax 提交联系表单时出错

Javascript:如何计算总数

javascript - 在 WordPress 帖子中添加 JavaScript

php - 使用 ajax jquery php mysql 检查用户名

javascript - 如何正确加载 URL 并访问其内容