重新加载script

在web开发中,我们会莫名其妙的出现错误,明明已经引入js脚本,却运行时依然找不到js,此时可以考虑是否成功加载js,因此需要自己手动加载脚本,下边是jquery提供的方法:

jQuery.getScript(url, [callback])

通过 HTTP GET 请求载入并执行一个 JavaScript 文件。
jQuery 1.2 版本之前,getScript 只能调用同域 JS 文件。 1.2中,您可以跨域调用 JavaScript 文件。注意:Safari 2 或更早的版本不能在全局作用域中同步执行脚本。
如果通过 getScript 加入脚本,请加入延时函数。

参数
url,[callback]String,FunctionV1.0
url:待载入 JS 文件地址。
callback:成功载入后回调函数。

eg:
$.getScript("test.js", function(){
  alert("Script loaded and executed.");
});


50个必备的实用jQuery代码段+ 可以直接拿来用的15个jQuery代码片段
http://www.cnblogs.com/zfc2201/p/3298955.html

### 动态加载外部 JavaScript 文件 动态加载外部 JavaScript 文件可以通过创建并操作 `<script>` 元素来实现。以下是具体方法及其示例代码: #### 方法描述 通过 `document.createElement` 创建一个新的 `<script>` 元素,并将其属性设置为目标 JavaScript 文件的路径。随后,将该元素附加到文档中的指定位置(通常是 `<head>` 或 `<body>`),从而触发脚本的异步加载和执行。 此方式具有灵活性高、兼容性强的特点,适用于需要按需加载资源的场景[^1]。 #### 实现代码 以下是一个完整的示例代码片段,展示如何动态加载外部 JavaScript 文件: ```javascript function loadScript(url, callback) { const script = document.createElement('script'); // 创建新的 <script> 元素 script.type = 'text/javascript'; // 设置脚本类型 script.src = url; // 指定目标 JS 文件地址 // 处理加载完成后的回调逻辑 if (callback) { script.onload = function() { // 成功加载时调用回调函数 callback(null); }; script.onerror = function() { // 加载失败时处理错误 callback(new Error(`Failed to load ${url}`)); }; } // 将新创建的 <script> 添加至页面头部 document.head.appendChild(script); // 插入到 DOM 中以启动加载过程 } // 调用示例 loadScript('https://example.com/path/to/script.js', function(err) { if (err) { console.error('Error:', err.message); } else { console.log('External script loaded successfully.'); } }); ``` 上述代码定义了一个名为 `loadScript` 的函数,用于接收两个参数:目标 JavaScript 文件 URL 和可选的回调函数。当脚本成功加载或发生错误时会分别触发对应的事件处理器。 #### 注意事项 - **跨域问题**:如果尝试加载来自不同源的 JavaScript 文件,则可能遇到同源策略限制。此时可以考虑使用 CORS 配置或者 JSONP 技术解决。 - **重复加载风险**:多次调用同一文件可能导致不必要的网络请求甚至冲突行为。因此建议加入缓存机制避免冗余加载
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值