高さを次のように設定します。
$('element').height(1000);
そしてこのように:
$('element').css({'height': '1000px'});
これら2つの間にパフォーマンスの違いはありますか?
また、CSS3 トランジションのパフォーマンスにも関係がありますか?
高さを次のように設定します。
$('element').height(1000);
そしてこのように:
$('element').css({'height': '1000px'});
これら2つの間にパフォーマンスの違いはありますか?
また、CSS3 トランジションのパフォーマンスにも関係がありますか?
ソースを読んで、ルーク。
//snipped to end:
return value === undefined ?
// Get width or height on the element, requesting but not forcing parseFloat
jQuery.css( elem, type, extra ) :
// Set width or height on the element
jQuery.style( elem, type, value, extra );
return value !== undefined ?
jQuery.style( elem, name, value ) :
jQuery.css( elem, name );
2 つの違いは、一致した要素を調べる前に行われることと、 にextra
渡されるそのパラメーターです.height
。何が合理的に大きな減速を引き起こす可能性がありますか? 私は本当の考えを持っていません。おそらく、jsエンジンが一方では実行できるが、他方では実行できない最適化に関係しているのでしょう。ほとんどの場合、パフォーマンス テストは良くありません (これらを正しくテストするのは非常に困難です)。
ただし、これらのメソッドのパフォーマンスは最優先事項ではありません。それが本当に問題である場合は、両方の方法を試して、どちらが大幅に改善されるかを確認することで、解決を試みることができます。ことわざにあるように、「時期尚早の最適化は諸悪の根源です」。
詳細に説明すると、プログラムで何かが遅いことに気づき、それを の呼び出しまで追跡すると、.height
に切り替えることでパフォーマンスの違いがあるかどうかを確認できます.css
。