CSS3 と jQuery の両方で、ハッシュ リンク ナビゲーションを実装できます。しかし、CSS3 でトランジションをアニメーション化することはできません。また、CSS3 ハッシュ リンクをサポートするブラウザーでオフにすることはできません。その結果、jQuery と CSS3 の両方が移動を行い、CSS3 が 10 回中 9 回勝ちます。
この最初のjsfiddleでは、ページをどのように見せたいか、ブラウザによって自動的にナビゲーションが行われます:
この 2 番目の jsfiddle には同じページが含まれていますが、リンクが押されたときに派手なアニメーションを実行することになっている単純なスクリプトと共に jQuery がロードされていますが、ほとんどの場合遅すぎます。ただし、十分な回数クリックすると、アニメーションが 1 回または 2 回表示されます。
jQuery または CSS3 でトランジションを行うことには、長所と短所があります。ほとんどの場合、私は両方を持ちたいと思っています。ブラウザが CSS3 トランジションを実行できる場合は、送信するコードを大幅に減らします。ブラウザーが送信できない場合は、jQuery コードを送信します。しかし、何よりも、うまく機能する1つの方法が必要です。