2013-08-24 22 views
11

私はJqueryが単なるjavascriptのライブラリであることを知っています。JQueryの速度とJavaScriptの速度

は、Jqueryのアニメーションとイベントが遅いjavascriptですか?もしそうなら、どれくらい遅くなりますか?

私はネイティブのJavaScriptで自分のサイトを書き直すべきかどうかを判断しようとしています。

+0

このようなサイトを書き直すことを強くお勧めしますか? jQueryは単なるJavaScriptライブラリです。jQueryオブジェクトはネイティブDOMメソッドを直接使用するよりも処理速度が遅くなりますが、ほとんどの場合、パフォーマンスはあまり重要ではありません。 –

+0

速度に加えて他の要因も考慮してください。あなたがサポートする必要があるブラウザ、開発にどれくらいの時間がかかりますか? – ryan

+0

私は現在行っているように、すべてのWebブラウザをサポートする必要があります。開発時間は問題ではありません。私のサイトはかなり大きいので、ハードウェアが壊れているコンピュータは少し遅れてしまいます。また、サファリユーザーのために。 –

答えて

24

最新のコンピュータの最新のブラウザでは、速度に関してjQueryが非常に高速です。純粋なJavaScriptです古いブラウザとマシンではどちらも大幅に遅くなります。

DOMにアクセスするための純粋なJavascriptは、jQueryがこれに持っているオーバーヘッドを削減できるため、高速化できます。しかし、あなたが何か大きなミスを書いて、物事を遅くすることができるので、必ずしも速くする必要はありません。一方、jQueryは過去数年間にわたってバトルテストを受けており、実績があることが証明されています。

もう1つのことは、jQueryはモバイルデバイスを意識して設計されていなかったことです。 clickのようなイベントは、この事実(約300ms)のために遅延を引き起こす。 jQueryのアニメーションも平均的なモバイルデバイスではかなり遅いです。書き込まれる方法によってCPUがバインドされるため、平均的なモバイルデバイスには多くのCPUパワーがないからです。これを回避する方法は、ハードウェアアクセラレーションされたCSSアニメーションを使用することです。

+3

うん、jqueryについて知りませんでした:) ja –

+0

私の意見では、jQueryに固執すべきです。私は純粋なJSのすべてを書くことは、あなたに現在目立ったパフォーマンスの向上を与えるとは思わない。私は、代わりにCSSアニメーションを使用するだけで、jQueryを使ってネイティブに感じるモバイルサイトを作成しました。私の経験ではフレームワークの残りの部分は超高速です。セレクタとイベントなども、JSとは対照的にjQueryで非常に簡単です。 – Hless

+0

よろしくお願いします。セレクタを毎回入力するのではなく、変数のセレクタを使用するのはどうですか?それが何かを広げることができるのだろうか? –