我有一个切换开关,当我按下它时,它会在页面头部添加一个 Javascript:
function yourcallback (){
var head= document.getElementsByTagName('head')[0];
var script= document.createElement('script');
script.type= 'text/javascript';
script.src= 'dev/additional_script.js';
head.appendChild(script);
}
现在,当我使用 firebug 调试它时,我可以看到所有脚本,但是如果我尝试调用该脚本的函数,它会告诉我我试图调用的函数是未定义的。
所以看起来脚本没有正确加载。
但是,如果我在 firebug 中尝试调用相同的函数,它返回function()
意味着它应该被定义。
有没有人经历过这样的事情和/或知道我该如何解决它。
请告诉我您是否需要更多代码信息并将其添加到我的问题中
更新
好的,这是我有两个脚本的事情:
控制开关按钮的脚本(当用户按下它时,将加载另一个脚本)
按下脚本按钮时加载的脚本(这是函数所在的位置。
在脚本一中,我试图在脚本 2 加载后调用一个函数,这就是我得到错误的地方:
我调用函数的方式只是使用函数名
我试图访问的功能如下所示:
var init = function() {
var i, anchors, scriptTag;
//get the uid...
scriptTag = document.getElementById("link-replacer");
if(scriptTag) {
uid = scriptTag.getAttribute("data-uid");
} else {
uid = "none";
}
urlpart = forwardUrl+"?uid="+uid+"&url=";
if(doOnLoadReplace) {
anchors = document.getElementsByTagName("a");
for(i = 0; i < anchors.length; ++i) {
fixHref(anchors[i]);
}
}
};