0

次のコードは何をしますか:

$('#myelement').is('*')

アスタリスクは何を意味しますか?要素が1つしかないので、要素が要素のセットと一致するかどうかをチェックする、を#myelement使用する意味がわかりません。is()

4

5 に答える 5

7

これはいくつかの真剣に存在するJavaScriptです。

$('#myelement').is('*')

存在しない場合は失敗#myelementし、存在しない場合はtrueを返します。

于 2012-07-06T23:16:52.603 に答える
2

http://api.jquery.com/is/

少なくともそれを理解していること、そして私がそれをどのように使用する傾向があるかから、それがうまくいくことはほとんどありません。呼び出されたものが何であれ、trueまたはfalseを返します。

例AJAXを介してフォームを送信する前に、チェックされていることを確認したいチェックボックスがあります。

if( $('input#tosCheck').is(':checked') ){
    /*its checked submit form*/
}else{
    alert('Error');
}

全体として、jQueryからAPIへのリンクは、これまでにないほど適切に記述されていますが、少なくとも、いくつかのアイデアを評価するのに役立つ使用例を共有したいと思いました。

于 2012-07-06T23:17:18.170 に答える
2

基本的に、要素が存在するかどうかを確認します。最善の方法ではありません...

于 2012-07-06T23:18:58.913 に答える
2

is要素が基準に適合していることを確認します。この場合、"*"はすべての要素を意味します。したがって、前のセレクターが何かを返す場合は、単にtrueを返します。

例については、こちらをご覧ください:http: //jsfiddle.net/b7DwB/

于 2012-07-06T23:19:56.780 に答える
2

以前にjQueryコードが使用されたのを見たことがあるとは言えませんが、要素の存在を確認する方法としては不十分なようです。*はユニバーサルセレクターであるため、問題の式は存在する場合は常に返され、true存在#myelementしない場合はfalseを返します。

代わりにjQueryオブジェクトの長さを簡単に確認できるため、これは要素の存在を確認する「不十分な」方法だと思います。

$('#myelement').length > 0

私はテストを行っていませんが、is()関数呼び出しのオーバーヘッドがないため、上記の方が高速であると思います。

于 2012-07-06T23:20:42.603 に答える