javascript加载其他脚本 - 调用函数 - 未定义

时间:2013-10-04 08:22:29

标签: javascript undefined

我有这个JS:

<script type="text/javascript">
var aaascript = document.createElement('script'); aaascript.type = 'text/javascript';
aaascript.src = ('https:' == document.location.protocol ? 'https://xxx' : 'http://xxx') + '/aaa.js';
var aaas = document.getElementsByTagName('script')[0]; aaas.parentNode.insertBefore(aaascript,aaas);
callthis('somevalue');
</script>

此代码生成脚本标记并将其插入页面。在脚本中aaa.js是函数callthis。但是当我调用该函数时会出现这个错误:

Uncaught ReferenceError: callthis is not defined (anonymous function)

这里出了什么问题?

1 个答案:

答案 0 :(得分:2)

正在创建script标记,但随后会从服务器加载脚本。在这两个事件之间调用了callthis();也就是说,在脚本完全加载之前,该方法不存在。

使用脚本标记的.onload事件延迟调用callthis(),直到脚本完全加载为止,如文档here所述。