2012-04-16 17 views
0

私はアンドロイドを使用しています。私は怠惰なので、DOMを操作するためにjviewをwebviewにロードします。jQueryが完全に読み込まれているかどうかを知る方法?

私はwebviewを読み込み、jQueryが定義されていない限り、彼は何もできないユーザーを示す読み込み画面を持っています。

if(info.equalsIgnoreCase("undefined")) 

情報typeof演算(jQueryの)です。彼は初めに定義されていない、約1秒後にそれは定義されているが、SURPRISE!あなたはすべての機能を持っていません...

説明:jQueryが定義された直後に、jQuery( 'body')を試しました。remove()...私は〜4秒後にそれを待つ必要があります。しかし、私は自分の体の背景を変えたいと思ったら、すぐに働いています。

私の質問は、jQueryが完全にロードされたときを知る方法ですか?ターゲットセレクタが用意されていたときに、事前

+0

それは私が私がロードjQueryの前に待機しているためDOMがロードされていることを確信して他の人が –

+0

を述べてきたように$ .ready' '使用し、それはDOMだ、完全にロードされていないjQueryのではありません。 – Shinao

答えて

1

おかげなぜないだけで判断するためにready()を使うのか?醜いが、機能

<body onload="fireItUp();"> 
    <script src="/path/to/jquery.js"></script> 
    <script> 
    window.fireItUp = function() { 
    // load things 
    } 
    </script> 
</body> 

$(document).ready(function() { 
    // load things 
}); 

代替オプションは、文書本体が体内でのjQueryを含めるようにしてくださいされ、ロードが完了している場合に発生させるボディのonloadイベントをシムすることです。

+0

私はすでに試してみましたが、それはnerverがその機能に行くようなものです...無限の読み込み画面があります。 – Shinao

+0

私は$(document).readyシステムをもう一度試しました。jQueryの読み込みが終わった後で追加すると、それは無意味ですので、入力するだけです。 問題は、ユーザーがjQueryを「アクティブにする」ときに選択するので、jQueryをどのように追加できるかわかりません。表示されるすべてのWebサイトに追加するとexeptできますが、醜いです。他の方法では? – Shinao

1

jQueryが利用可能になると、になります。利用可能なすべての方法があります。

DOMの準備が完了するまで待つ必要があります。

$(function() { 
    // DOM may be manipulated here. 
}); 
+0

$(document).ready ...と同じことjQueryが完全に読み込まれた後に追加するときにのみ入力します – Shinao

関連する問題