11

Backbone.jsのルーターは、クライアント側のページをルーティングし、URLに基​​づいてアクションやイベントに接続する役割を果たします。しかし、URLの変更をトリガーする方法は?これを行う唯一の方法が、ページルーティングに関連付けられた要素を<a>タグで囲むことである場合を意味します。

mousedownイベントとmouseupイベントをルーティングに使用される要素に関連付けたため、タグに入れると、<a>tagのclickイベントと競合するため、mousedownイベントとmouseupイベントは間違いなく無効になります<a>。では、ルーティングを行う他の方法はありますか?

4

1 に答える 1

31

あなたが使用することができますRouter#navigate

ナビゲート router.navigate(fragment, [options])

アプリケーションでURLとして保存したいポイントに到達したら、navigateを呼び出してURLを更新します。ルート関数も呼び出す場合は、トリガーオプションをに設定しますtrue

したがって、ルーターがrであり、のルートをアクティブ化する#/some_route場合は、次のことができます。

r.navigate('some_route', { trigger: true });

デモ(コンソールを開いてください):http://jsfiddle.net/ambiguous/xkZtB/

于 2012-04-27T06:12:09.777 に答える