html动态加载script

复制代码
<!DOCTYPE html>  
<html lang="en">  
<head>  
    <meta charset="UTF-8">  
    <title>动态添加JavaScript代码</title>  
</head>  
<body>  
    <h1>Hello, World!</h1>  
  
    <button onclick="addScript()">点击添加脚本</button>  
  
    <script>  
        function addScript() {  
            // 创建一个新的script元素  
            var script = document.createElement("script");  
              
            // 设置脚本的内容  
            script.textContent = `  
                document.body.innerHTML += "<p>这是一段动态添加的文本。</p>";  
            `;  
              
            // 将脚本添加到body元素  
            document.body.appendChild(script);  
        }  
    </script>  
</body>  
</html>

当HTML文档被完全加载和解析完成时,DOMContentLoaded事件会被触发。这比load事件更早,因为在DOMContentLoaded事件触发时,样式表、图像和子框架可能还没有完全加载。

复制代码
<!DOCTYPE html>  
<html lang="en">  
<head>  
    <meta charset="UTF-8">  
    <title>Dynamic Script Loading</title>  
</head>  
<body>  
    <script>  
        document.addEventListener("DOMContentLoaded", function() {  
            var script = document.createElement("script");  
            script.src = "path/to/your/script.js";  
            document.body.appendChild(script);  
        });  
    </script>  
</body>  
</html>

当一个资源(如脚本、图像或样式表)完成加载时,load事件被触发。这通常用于检测外部资源是否已完全加载。

复制代码
<!DOCTYPE html>  
<html lang="en">  
<head>  
    <meta charset="UTF-8">  
    <title>Dynamic Script Loading</title>  
</head>  
<body>  
    <script>  
        window.addEventListener("load", function() {  
            var script = document.createElement("script");  
            script.src = "path/to/your/script.js";  
            document.body.appendChild(script);  
        });  
    </script>  
</body>  
</html>

使用jQuery,你可以使用$(document).ready()方法来确保在DOM加载完成后执行代码。这与DOMContentLoaded事件类似。

复制代码
<!DOCTYPE html>  
<html lang="en">  
<head>  
    <meta charset="UTF-8">  
    <title>Dynamic Script Loading</title>  
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>  
</head>  
<body>  
    <script>  
        $(document).ready(function() {  
            var script = document.createElement("script");  
            script.src = "path/to/your/script.js";  
            document.body.appendChild(script);  
        });  
    </script>  
</body>  
</html>
相关推荐
子兮曰4 小时前
Bun v1.3.14 深度解析:Image API、HTTP/3、全局虚拟存储与五十项变革
前端·后端·bun
kyriewen5 小时前
今天,百年巨头一次砍了9200人,而一个离职科学家的实话让全网睡不着觉
前端·openai·ai编程
问心无愧05135 小时前
ctf show web 入门42
android·前端·android studio
kyriewen5 小时前
老板逼我上AI,我偷偷在浏览器里跑LLaMA,省下20万API费
前端·react.js·llm
Beginner x_u5 小时前
前端八股整理(手写 02)|数组转树、数组扁平化、随机打乱一个数组
前端·数组·数组转树·数组扁平化
KaMeidebaby6 小时前
卡梅德生物技术快报|禽类成纤维细胞 FISH 实验:鸟类性别染色体基因定位技术实现与数据验证
前端·数据库·其他·百度·新浪微博
天若有情6736 小时前
前端高阶性能优化:跳出传统懒加载与预加载,基于用户行为做轻量预判加载
前端·性能优化
小小小小宇6 小时前
前端转后端:SQL 是什么
前端
张元清7 小时前
React Observer Hooks:7 种监听 DOM 而不写样板代码的方式
前端·javascript·面试
广州华水科技7 小时前
单北斗GNSS变形监测是什么?主要有怎样的应用与优势?
前端