在 jQuery 延迟后加载 jquery 插件文件
load jquery plugin file after jQuery deffered
我有一个 js 文件,我想在 Jquery 延迟函数之后加载它。
事情是我将数据带入我的 getData 函数,然后将字符串注入 DOM。之后,js 文件将初始化该代码。这就是我想在代码运行后调用 js 文件的原因
我该怎么做
下面是我的代码。
jQuery function decalaration
function getData(url) {
return $.ajax({
url: url,
method: 'GET',
headers: {
Accept: 'application/json; odata=verbose',
},
})
}
function call
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');
});
我有一个 js 文件,我想在 Jquery 延迟函数之后加载它。 事情是我将数据带入我的 getData 函数,然后将字符串注入 DOM。之后,js 文件将初始化该代码。这就是我想在代码运行后调用 js 文件的原因
我该怎么做
下面是我的代码。
jQuery function decalaration
function getData(url) {
return $.ajax({
url: url,
method: 'GET',
headers: {
Accept: 'application/json; odata=verbose',
},
})
}
function call
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');
});