4

シングルページのナビゲーションハンドラーを探していました。Sammy.js はクラックしても大丈夫だったので、適切なナビゲーションを備えたサンプル SPA を作成しました。(さらに、sammy.js が Twitter で使用されているという事実は、私をより興味深くしました..) :)

問題ない!!

代替案を探したところ、History.js と Nav.js が同じ行にあることがわかりました。

History.js -- 可能な限り HTML5 History API に従います すべての HTML5 ブラウザに相互互換性のあるエクスペリエンスを提供します (それらはすべて、HTML5 History API の実装が少し異なり、動作が異なり、場合によってはバグが発生します - History.js はこれを修正して、エクスペリエンスは HTML5 ブラウザー全体で期待どおり / 同じ / 優れています)

Nav.js -- 左右の矢印キーをバインドすることにより、ページベースのナビゲーションを管理できます。

Sammy.js -- Sinatra と同様、Sammy アプリケーションは「ルート」を中心に展開します。ただし、Sammy のルートは少し異なります。'get' および 'post' ルートを定義できるだけでなく、アプリケーションによってトリガーされるカスタム イベントにルートをバインドすることもできます。

定義上、すべてが適切に見えます。

4

1 に答える 1

0

ここでの私の視点は次のとおりです (私は sammy.js が好きなので、ここでは偏見があります。客観的な意見はありません)。

History.js はすべて HTML5 に組み込まれているため、IE8 と以下のすべてのサポートが無効になります。これは許容される場合もありますが、許容できない場合もあります。さらに、gecko、trident、webkit (主要なブラウザー エンジン) の間で、それらがすべて違いなく HTML5 履歴仕様を完全にサポートしているかどうかは完全にはわかりません。

だから私にとってHistory.jsはすべてアウトです。次に、Nav.js と Sammy.js を区別する必要があります。私はこれを競争とは見ていません。Nav.js にはキーボード ベースのナビゲーションのみがあり、jQuery を使用しないプロジェクトはあまりないため、http://api.jquery.com/category/events/keyboard を使用して Sammy.js でそれを実現できます。 -events/と、次/前のページまたはヤギを浮かせる何かを意味する特別なイベントのための特別なルート。

Sammy.jsは、軽量で、効率的で、スケーラブルで、再利用可能で、クロスブラウザーと完全に互換性があります。

于 2013-01-02T08:31:52.583 に答える