2009-04-17 12 views
6

私は文書readyイベントは、何か発射した後に広告を挿入するために$(ドキュメント).ready()といくつかの外部のjQueryを使用しています:

$(document).ready(function() { 
    $('#leaderboard').html("<strong>ad code</strong>");  
}); 

これを広告の読み込みが遅いためにUIがブロックされないようにすることです。これまでのところうまくいきました。

私たちのCMSシステムでは、これを外部JSファイルの一部にすることはできませんので、私は2番目のドキュメント準備完了イベントを使用し、インラインスクリプトタグを使用して挿入することができます?そうであれば、外部JSドキュメント準備完了イベントまたはインラインスクリプトの実行順序はどうなりますか?

答えて

10

jqueryは、必要な数のイベントメソッドを使用できます。jqueryは、それらをキューに追加します。メソッド呼び出しの順序は定義順序と同じです。最後に追加されたものが最後に呼び出されます。

ajaxを使用してスクリプトを使用してHTMLコードを読み込み、DOM $()。ready()も呼び出されるときにコードを読み込むと、動的に広告を読み込むことができます。

3

AnがjQueryの道のボーナスは、あなたが複数)(レディ 定義を持つことができます で追加。これはすべての jQueryイベントの場合です。

$(document).ready(function(){ alert( "Number One");});

$(ドキュメント).ready(関数(){ 警告( "ナンバーツー");。

9

はい、複数の$(ドキュメント).ready()sが問題ではありませんを追加するすべての意志readyイベントで実行される

注しかし、あなたのコードサンプルが間違っている$(ドキュメント).ready()関数ではなく、式を取り、あなたはそれをこのような機能を養う必要がありますので:。。。

$(document).ready(function() { 
    $('#leaderboard').html("<strong>ad code</strong>");  
}); 

この関数は、電子文書が準備完了です。

+0

うん、ちょうど私が実際に働いていたことを確認するために説明するためにいくつかのコードをつかんだ:) – Tom

1

JQueryは、準備関数を定義された順序で呼び出します。 いくつかのデータを最初にロードして実行を無効にする場合は、holdReady()を使用します。

関連する問題