完成页面加载后执行函数

 2023-02-12    195  

问题描述

我正在使用以下代码在页面加载后执行一些语句.

<script type="text/javascript">
    window.onload = function () { 

        newInvite();
        document.ag.src="b.jpg";
    }
</script>

但是此代码无法正常工作.即使某些图像或元素正在加载,该功能也会被调用.我想要的是称呼该页面已完全加载.

完成页面加载后执行函数

推荐答案

这可能对您有用:

document.addEventListener('DOMContentLoaded', function() {
   // your code here
}, false);


如果您对jQuery的安慰,

$(document).ready(function(){
// your code
});

$(document).ready()在domcontentloaded上发射,但在浏览器中并未始终发射此事件.这就是为什么jQuery很可能会实施一些重大解决方法来支持所有浏览器的原因.这将使使用普通的JavaScript模拟行为非常困难(但当然并非不可能).

正如Jeffrey Sweeney和J Torres所建议的那样,我认为具有setTimeout函数最好,然后在以下启动函数之前:

setTimeout(function(){
 //your code here
}, 3000);

其他推荐答案

javascript

document.addEventListener('readystatechange', event => { 

    // When HTML/DOM elements are ready:
    if (event.target.readyState === "interactive") {   //does same as:  ..addEventListener("DOMContentLoaded"..
        alert("hi 1");
    }

    // When window loaded ( external resources are loaded too- `css`,`src`, etc...) 
    if (event.target.readyState === "complete") {
        alert("hi 2");
    }
});

与JQuery相同:

$(document).ready(function() {   //same as: $(function() { 
     alert("hi 1");
});

$(window).load(function() {
     alert("hi 2");
});


注意: – 不要使用以下标记(因为它覆盖了其他相同的声明):

document.onreadystatechange = ...

其他推荐答案

我有点混淆您按页加载完成的意思,” dom load”或” content Load”?在HTML页面上可以在两种类型事件之后触发事件.

  1. dom负载:确保整个DOM树加载开始到结束.但不能确保加载参考内容.假设您通过img标签添加了图像,因此此事件确保所有img加载了所有img,但没有正确加载的图像.要获得此事件,您应该以以下方式编写:

    document.addEventListener('DOMContentLoaded', function() {
       // your code here
    }, false);

    或使用jQuery:

    $(document).ready(function(){
    // your code
    });
  2. DOM和内容负载后:它也指示DOM和内容负载.它不仅可以确保标签还可以确保所有图像或其他相对内容加载.要获得此事件,您应该以以下方式编写:

    window.addEventListener('load', function() {...})

    或使用jQuery:

    $(window).on('load', function() {
     console.log('All assets are loaded')
    })

以上所述是小编给大家介绍的完成页面加载后执行函数,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持!

原文链接:https://77isp.com/post/32698.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。