2012-04-05 7 views
0

を見つけるために失敗した場合に、スクリプトを停止します。

loop 
if($(element).find(selector)) 
{ do stuff } 
else 
{ do other stuff } 
/loop 

アイデアは2があるということですバージョンの要素がループしているので、どのアクションを取るべきかを判断するために(コンテンツに基づいて)それらを区別する必要があります。

これは、検索が成功した場合に効果的です。そうでない場合は、スクリプトに致命的なエラーがあります。

検索が失敗した場合に何が起きるかに関するドキュメントは見つかりません。この仕事をするにはどうすればいいですか?

+0

'find'の空の結果はあなたのコードを破損すべきではありません。 FirebugまたはWebkitコンソールで確認して、例外とそれをスローする行にコードを提供できますか? – rjz

+0

使用している実際のコードを投稿することはできますか? –

+0

私はfirebugからエラー文を受け取ったことはありませんでしたが、明らかに、セレクタで定義された要素を使用しようとするとifに入り、フォールトしていました。 – baiano

答えて

1

これはいかがですか?

if($(element).find(selector).length > 0) 
{ do stuff } 

もう少し時間がかかりますが、動作する必要があります。

オリジナルの検索テストが常に真と評価されているように見えます。長さをテストすると、評価するブール値が得られます。

+0

[jsfiddle]での動作確認済み(http://jsfiddle.net/FbKZe/) –

+0

おお!あなたは***のキャラクターを救うことができます!!! ***:P '(!$("#first ")。find(" img ")。length)'と逆のものを – rlemon

+0

私は私のキャラクターと私はそれから得る透明性:) –

関連する問題