私は、ウェブサイトのjavascriptを自動的に結合し、縮小するwebサービスを構築しています。ウェブ所有者は、ウェブサイトのヘッドに次のjsスニペットを挿入するだけで、ミニファイルを作成してヘッド要素に追加します。スクリプトを動的に挿入してすぐに実行する
私が見ている問題は、スクリプトが動的に追加されたときに、必ずしも身体の残りの部分より前に実行されるとは限らないということです。多くのサイトでは、本体が生成される前にヘッドスクリプトが実行されると予想されるため、これが問題です。
何かの前に動的に追加されたスクリプトを実行する方法はありますか?たぶん、ボディ全体を削除して、追加スクリプトがロードされた後に再度挿入するような回避策があるかもしれません。でも、それはかなりハッキリですね。
<script type="text/javascript">
var minify_files = new Array(
'domain.com/js/one.js',
'domain.com/js/two.js',
'domain.com/js/three.js'
);
</script>
<script type="text/javascript" src="minifyservice.com/minify.js"></script>
実行する予定のスクリプトを関数内に記述し、その中から関数を呼び出すと、その関数が実行するスクリプトを挿入します。 – Babiker
実行されるのは、 "minify_files"配列内のすべてのファイルを縮小して結合したものであるためです。このサービスのポイントは、サイトの所有者が上記のコードを埋め込んでいて、うまく機能することです。 – makeee
あなたは最初に実行されるようにあなたのスクリプトが必要ですか?あなたのユーザーがページ上部の – user406905