新しいメソッドを書いてもらうのはそれほど面倒ではないので、全員がこの AA.js ファイルを参照しているため、AA.js の後に関数を実行して jq ライブラリを自動的にインポートしたいと考え、導入を考えました。 js ファイルのメソッド:
getScript : function(s) ,call){
var el = UI.DC('script');
if (call) {
el.onload =el.onreadystatechange=call;
UI.A (el,'type', 'text/javascript');
UI.A(el,'src',s);
UI.GT(document,'head')[0].appendChild(el) );
}
/*UI.DC はオブジェクトの作成、UI.A は属性の割り当て、GT は getElementsByTagName*/
なので UI.getScript を実行します("js/jquery/jquery-1.4. 2.min.js",function(){alert("Loading success")});
結果は、IE と ff で読み込みが成功したことになります。ただし、HTMLでjqを使用すると、IEでは実行できない場合がありますが、定期的に更新すると実行できる場合もありますが、サーバー上に配置された静的ページとクライアント上に配置された静的ページの違いもありますが、Firefoxでは問題ありません。 ...
そこで、jq ファイルが html の読み込みと並行して読み込まれるかどうかを考えました。jq ファイルが正常に読み込まれたとき、HTML ファイルはすでに実行されているため、
コードをコピーします
コードは次のとおりです。 <script> >alert("execute before html") </div></script>
実行により、hmtl が最初にポップアップする前に実際に実行されたことがわかり、その後読み込みが成功しました。 Firefox でも同じことが当てはまります。サーバーにアップロードするときに、同時に Firefox のポップアップが表示されるような気がしました...
そこで、HTML 本文の内容を確実に表示できるように設定するにはどうすればよいのかと考え始めました。 jq ファイルがロードされた後にのみ実行されます。ファイルを導入するために を先頭に追加するとどうなるでしょうか。
そういえば、彼はページを閲覧するときに使用したと思います。これらのインポートされたファイル関数は HTML で使用できます。
コードをコピーします
require: function(libraryName) {
// DOM 経由の挿入は Safari 2.0 では失敗するため、総当たりアプローチ
document.write('');
} ,
load: function() {
if((typeof Prototype=='unknown') | |
(要素のタイプ == '未定義') ||
(要素のタイプ == '未定義') ||
parseFloat(Prototype.Version.split(".")[0] " ."
Prototype.Version.split(".")[1]) < 1.5)
throw("Prototype JavaScript フレームワーク 1.5.0 が必要です");
$A( document.getElementsByTagName("script")).findAll( function(s) {
return (s.src && s.src.match(/loader.js(?.*)?$/))
} ).each( function(s) {
var path = s.src.replace(/loader.js (?.*)?$/,'');
var include = s.src.match( /?.*load=([a-z,]*)/);
(includes ? include[1 ] : "").split(',').each(
function(include) {
Collapsar.require(パス include '.js') });
}
}
Collapsar.load();呼び出すと、 このように、以降のファイルは実際、この文の重要な役割は document.write(''); です。 🎜>書き込みメソッドがドキュメントにコンテンツを追加するようなものであるかどうかについて、いくつかの疑問を感じました。実験では、コンテンツが文字列の場合、スクリプトなどのタグに表示されることがわかりました。リンクがヘッドに表示され、ヘッドに参照 JS ファイルを追加することは、本文のコンテンツを実行する前にヘッドに直接ロードすることと同じです。 .
実験: AA.js に追加します:
UI.getsc=(function(){
document.write('');
})()
で jq メソッドが導入されました。本文の最初の行。実験は成功しました。IE でも ff でも実行できます。
実験を続ける時間があります。
声明:この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。