javascript - jQuery 延迟后加载 jQuery 插件文件
问题描述
我有一个 js 文件,我想在 Jquery 延迟函数之后加载它。事情是我在我的getData函数中引入数据,然后将字符串注入 DOM。之后,js 文件将初始化该代码。这就是我想在我的代码运行后调用 js 文件的原因
我怎样才能做到这一点
下面是我的代码。
jQuery函数声明
function getData(url) {
return $.ajax({
url: url,
method: 'GET',
headers: {
Accept: 'application/json; odata=verbose',
},
})
}
函数调用
getData(url).then(function(data){
});
现在我想在then函数完成后调用 jQuery 文件。
<script src="file.js"></script>
解决方案
您需要使用 Promise/await 方式,因为您需要在执行某些操作后编写 js 文件,这样您就可以让 js 文件等到您的代码完成,然后将您的新 js 文件写入 body....查看此示例:
/* MEthod used to write js to body script */
function addJsFileToBody(jsSrc)
{
var script = document.createElement("script");
script.src = jsSrc;
document.getElementsByTagName("body")[0].appendChild(script);
}
var promise1 = new Promise(function(resolve, reject) {
$.ajax({
url: url,
method: 'GET',
headers: {
Accept: 'application/json; odata=verbose',
},
complete: function(data) {
resolve(data);
}
})
});
promise1.then(function(value) {
addJsFileToBody('file.js');
});
推荐阅读
- javascript - 总计并创建一个数组,该数组按对象数组中的相同值计数
- javascript - 在 Javascript 中重新定义原型与附加到原型
- java - 在为简单的 RESTful CRUD Web 服务实现球衣客户端时面临错误
- python - 为什么 offsets.QuarterBegin 日期是 12-01、03-01、06-01、09-01?
- c# - 使用 c# 从 Azure 外部身份协作设置中读取目标域列表
- c# - c# 将值转发到其他形式的问题
- xamarin - 如何根据 isEnabled 是真还是假来更改标签的颜色?
- java - 如何在 Spring Cloud Gateway 中的执行器端点上设置密码
- python - 我正在从表格中抓取文本,但结果是空引号 ' '
- rest - 使用访问令牌时会话已过期或无效