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>
相关推荐
变与不变8061 天前
jQuery怎么使用
前端·javascript
神膘护体小月半1 天前
flex 布局的 order 属性
前端·css
paopaokaka_luck1 天前
流浪动物救助与收养系统(DeepSeek AI对话、 ECharts多维分析、救助流程衔接、领养与回访衔接、 捐赠确认与公示、志愿者协作)
java·前端·javascript·人工智能·mysql·echarts·推荐算法
仰望.1 天前
vue 表格组件 vxe-table 树表格懒加载支持拖拽排序的详细用法
前端·javascript·vue.js·vxe-table
前端 贾公子1 天前
vite-plugin-uni-manifest 升级指南
前端
小码哥_常1 天前
iPhone 用户传了张 HEIC,我的前端崩了
前端
小码哥_常1 天前
你发的原图可能暴露你家地址——聊聊图片 EXIF 隐私
前端
java1234_小锋1 天前
【技术专题】CSS3 网页技术 - CSS3 优先级
前端·css·css3
鸿蒙开发1 天前
共享 Schema 与 SchemaFactory
前端·后端·harmonyos
屏什么录1 天前
录屏超过两小时就卡顿崩盘?从参数调优到代码实现,一文彻底搞定长时间录屏
前端·音视频开发