jQuery   发布时间:2022-04-19  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了javascript – jquery .ready()函数等待多长时间?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个页面,PHP输出一个相当大的div,里面有很多组件.处理该div的JS几乎是瞬间开始的,但是存在与加载bigDiv和处理它的脚本相关的时序问题.

所以,我应用了这样的代码来处理ready()

var bigDiv = $(document).find('#bigDiv');
bigDiv.ready(function{
    //some code here
});

现在我的问题是,如果bigDiv需要很长时间才能显示,ready()函数需要等待多长时间?如果bigDiv根本没有出现怎么办?

所以为了避免脚本等待它,我应用了一个超时,

因此我选择了另一种方法

var waitTimer = 0;
var lodTmout  = 2000;
function chkDataLod(){
    var bigDiv = $pH(document).find('#bigDiv');
    if(bigDiv.length > 0){//find if bigDiv has content
        bigDiv.ready(function(){//wait for bigDiv to load it's contents completely
            //some code here
        });

    }else{
        //chk for bigDiv after every 500 msec for 2000 msec
        if(waitTimer === lodTmout){
            return false;
        }else{
            waitTimer += 500; 
            setTimeout('chkDataLod();',500);
        }      
    }
};

function _init(){
    chkDataLod();
}

_init();

最初我试图看看bigDiv的内容长度是否大于零.显示“未完全加载”的bigDiv时出现问题.所以我再次添加了.ready()函数.我在bigDiv上有一些动画功能,在完全加载之前我不想启动它.

这个bigDiv是从CDN加载的,所以加载时间是变化的.有一天它加载了将近5秒钟.看到我自己的方法,我知道它有问题.我正在使用setTimeout并准备就绪.但我不确定凌如何等待.我试图看到它的文档,但无法清楚地找到它.

如何针对指定的情况解决这个问题?

解决方法

最简单的方法是在元素的结束标记之后运行代码.
像这样

<div id='bigDiv>....</div>
<script>
// do whatever you want to do with div
</script>

ps:或者您可以尝试访问div之后的任何元素,并且有一些间隔.如果它存在 – 你的div准备好了.

大佬总结

以上是大佬教程为你收集整理的javascript – jquery .ready()函数等待多长时间?全部内容,希望文章能够帮你解决javascript – jquery .ready()函数等待多长时间?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。