在页面完全加载后执行某些操作

3zz*_*zzy 22 javascript jquery load

我正在使用一些嵌入代码,动态地向页面插入HTML,因为我必须修改动态插入的HTML,我想要一个jquery函数等到页面加载,我试过delay但它似乎没有用.

因此,例如,动态插入的HTM1具有元素 div#abc

我有这个jquery:

if ( $('#abc')[0] ) { 
  alert("yes");
}
Run Code Online (Sandbox Code Playgroud)

警报未显示.

我很感激任何帮助

谢谢

Zol*_*oth 47

$(window).load(function () {
    ....
});
Run Code Online (Sandbox Code Playgroud)

如果你必须等待iframe(并且不关心资产,只关心DOM) - 试试这个:

$(document).ready(function() { 
    $('iframe').load(function() { 
       // do something
    });
});
Run Code Online (Sandbox Code Playgroud)


Jam*_*ill 10

这就是jQuery.ready()事件的目的:

$(document).ready(function() {
    if ( $('#abc').length ) //If checking if the element exists, use .length
        alert("yes");
});
Run Code Online (Sandbox Code Playgroud)

描述:指定DOM完全加载时要执行的函数.


Jur*_*uri 7

使用jQuery.ready就足够了.试试这个

$(document).ready(function(){
   //your code here
});
Run Code Online (Sandbox Code Playgroud)

要么

$(function(){

});
Run Code Online (Sandbox Code Playgroud)

这是第一个的捷径.


Ati*_*aqi 5

load()方法在 jQuery 1.8 版中已弃用,并在 3.0 版中删除。所以你必须使用 -

$(window).on('load', function() {
 // code here
});
Run Code Online (Sandbox Code Playgroud)

  • 仅代码答案是低质量的答案。解释一下为什么这个代码片段可以工作。 (3认同)