0

私はこの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)

ここで何がうまくいかないのですか?

4

1 に答える 1

2

タグは作成されていますscriptが、スクリプトはサーバーから読み込まれます。callthis()これら 2 つのイベントの間に呼び出されます。つまり、スクリプトが完全にロードされる前であるため、メソッドは存在しません。

スクリプト タグのイベントを使用して、スクリプトが完全に読み込まれるまで.onload呼び出しを遅らせますcallthis()

于 2013-10-04T08:30:46.737 に答える