gpt4 book ai didi

javascript - 通过回调将脚本注入(inject)到页面

转载 作者:行者123 更新时间:2023-11-28 09:38:00 25 4
gpt4 key购买 nike

我正在尝试将 yepnope.js 注入(inject)页面,然后使用 yepnope 加载其他 JS 文件。

Chrome 开发工具的网络选项卡显示 yepnope 已获取,元素选项卡显示元素已注入(inject)。但控制台选项卡显示:

Uncaught ReferenceError: yepnope is not defined

这是我的代码:

var betaApp = {


injectYepnope: function(url) {
var gp = document.createElement( 'script' );
gp.type = 'text/javascript';
gp.async = true;
gp.src = url;

gp.onload = betaApp.yepnopeLoaded;
// Only for IE 6 and 7
gp.onreadystatechange = function()
{
if( this.readyState == 'complete' )
{
betaApp.yepnopeLoaded();
}
}

document.body.appendChild(gp);
},

yepnopeLoaded: function() {
yepnope([
{
load: ['//cdnjs.cloudflare.com/ajax/libs/json2/20110223/json2.js', 'http://raw.github.com/andris9/jStorage/master/jstorage.js'],
complete: function() {
betaApp.firstPartLoaded();
}
},
{
load: [
'http://code.jquery.com/jquery-1.8.2.min.js',
'http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.23/jquery-ui.min.js',
'https://raw.github.com/Automattic/Iris/master/dist/iris.js',
'https://raw.github.com/cnkt/eksi-beta/master/ui/js/twitter-bootstrap/js/bootstrap-modal.js',
'https://raw.github.com/Automattic/Iris/master/src/iris.min.css'
],
complete: function() {
betaApp.allJsLoaded();
}
}
]);
}
};

betaApp.injectYepnope('https://raw.github.com/cnkt/eksi-beta/master/ui/js/yepnope.js');

提前致谢。

最佳答案

你的代码本身没问题,但你需要确保在 DOM 准备好之后调用它,否则它无法将脚本附加到文档中。

要么使用库 onReady 事件(例如 JQuery.ready()) - 如果此代码必须位于外部文件中,则您唯一的选择,或者仅添加脚本直接指向文档末尾的 HTML。

关于javascript - 通过回调将脚本注入(inject)到页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12758375/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com