間に違いはありますか
jQuery('#id').show() and jQuery('#id').css("display","block")
と
jQuery('#id').hide() and jQuery('#id').css("display","none")
間に違いはありますか
jQuery('#id').show() and jQuery('#id').css("display","block")
と
jQuery('#id').hide() and jQuery('#id').css("display","none")
jQuery('#id').css("表示","ブロック")
プロパティには、、、 など、多くのdisplay
可能な値を設定できます。block
inline
inline-block
この.show()
メソッドは、必ずしも に設定するわけではありませんがblock
、定義したものにリセットします (存在する場合)。
jQuery ソース コードでは、display
プロパティを "" (空の文字列) に設定して、jQuery 操作前の状態を確認する方法を確認できます: little link。
一方、非表示は を介して行われるため、ある点と同等とdisplay: none;
見なすことができます。.hide()
.css("display", "none")
とにかく、落とし穴を避けるために.show()
andを使用することをお勧めします(さらに、それらは短くなります)。.hide()
show()とcss({'display':'block'})の違い
あなたが最初にこれを持っていると仮定して:
<span id="thisElement" style="display: none;">Foo</span>
電話をかけるとき:
$('#thisElement').show();
あなたが得るでしょう:
<span id="thisElement" style="">Foo</span>
その間:
$('#thisElement').css({'display':'block'});
します:
<span id="thisElement" style="display: block;">Foo</span>
ですから、違いがあります。
hidden()とcss({'display':'none'})の違い
上記と同じですが、これらをhide()に変更し、':'none'.....を表示します。
もう1つの違い
When.hide()
が呼び出されると、displayプロパティの値がjQueryのデータキャッシュに保存されるため、.show()
が呼び出されると、初期の表示値が復元されます。
はい、両方のパフォーマンスに違いがあり
ます。表示はバイナリ属性ではないため、jqueryキャッシュから初期状態を取得するために追加の作業を行う必要があるため、前の場合よりjQuery('#id').show()
も遅くなります。メソッドの場合です。jQuery('#id').css("display","block")
inline
block
none
table
hide()
参照: http: //jsperf.com/show-vs-addclass
パラメーターを指定しない .hide() メソッドは、要素を非表示にする最も簡単な方法です。
$('.target').hide(); 一致した要素は、アニメーションなしですぐに非表示になります。これは .css('display', 'none') の呼び出しとほぼ同じですが、display プロパティの値が jQuery のデータ キャッシュに保存されるため、後で表示を初期値に戻すことができます。要素の表示値が inline の場合、非表示にしてから表示すると、再びインラインで表示されます。
ショーについても同じ
はい、違いがあります。
jQuery('#id').css("display","block")
ブロックとして表示したい要素を常に設定します。
jQuery('#id').show()
たとえば、最初はどのような表示タイプであったか、display: inline になります。
Jquery ドキュメントを参照してください
ソースコードを見ることができます(ここでは v1.7.2 です)。
設定できるアニメーションを除いて、これも古い表示スタイルをメモリに保持します (すべての場合ではなく、 、 、 ... の場合block
もあります)。inline
table-cell
http://api.jquery.com/show/を参照してください
パラメーターなしの .show() メソッドは、要素を表示する最も簡単な方法です。
$('.target').show();
一致した要素は、アニメーションなしですぐに表示されます。これは .css('display', 'block') の呼び出しとほぼ同じですが、表示プロパティが最初の状態に復元される点が異なります。要素の表示値が inline の場合、非表示にしてから表示すると、再びインラインで表示されます。