1

Flash (または AJAX) Web サイトのブラウザ履歴を有効にするための最適なツール / プラクティスは何ですか? 確立された慣行は、次のようにURLにハッシュ追加を設定して読み取ることだと思います

http://example.com/#id=1

Flex History Manager については知っていますが、他に検討すべき良い代替案があるかどうか疑問に思っていました。一般的な AJAX ソリューションまたはベスト プラクティスにも関心があります。

4

5 に答える 5

4

SWFAddressは広く使用され、テストされています。Flash でディープリンクを処理することは、(前もって計画を立てれば) ほぼ簡単になります。連携して動作し、プロセス全体を非常に簡単にするJSおよびASライブラリを提供します。RSH for AJAX のようなものを見たいと思うでしょう。

于 2008-11-06T14:58:20.113 に答える
2

私はいくつかの小さなものにswfadressを使用しました。

于 2008-11-05T21:20:33.553 に答える
2

AJAX の場合、Really Simple Historyのようなものが優れています。

于 2008-11-05T21:02:18.957 に答える
0

私は次のように非常に単純な独自のソリューションを展開しました。

(function() {
  var oldHash, newHash;

  function checkHash() {
    // Grab the hash
    newHash = document.location.hash;

    // Check to see if it changed
    if (oldHash != newHash) {

      // Trigger a custom event if it changed,
      // passing the old and new values as
      // metadata on the event.
      $(document).trigger('hash.changed', {
        old: oldHash,
        new: newHash
      });

      // Update the oldHash for the next check
      oldHash = newHash;
    }
  }

  // Poll the hash every 10 milliseconds.
  // You might need to alter this time based
  // on performance
  window.setInterval(checkHash, 10);

})(jQuery);

次に、新しい値が何であるかに基づいてそれに応じて応答するために、「hash.changed」イベントのイベントハンドラーが必要です。このアプローチは非常に単純なケースで機能します。

于 2009-01-01T23:51:23.373 に答える
0

これは少し回りくどいように見えますが、私は現在、そのためにdojoフレームワークを使用しています。私のUIが主にJS/HTMLであるときに非常に便利なdojo.backがあります。パワー、滑らかなアニメーション、ブラウザの安定性を高めるために柔軟に対応するようになったので、使い続ける必要があるのはバックURLだけです。

FlexBuilderには、デフォルトのプロジェクトで独自のブラウザ履歴があるようです。

また、Flex 3クックブックには、mx.managers.HistoryManagerを使用して独自のカスタム履歴管理を作成するためのレシピがあります。dojo.backへの依存を取り除くために、いつかこれを試してみる予定ですが、まだ時間がありません。

于 2008-11-06T00:53:49.847 に答える