История браузера для Flash (или AJAX) - PullRequest
1 голос
/ 05 ноября 2008

Каков наилучший инструмент / метод для включения истории браузера для Flash (или AJAX) сайтов? Я полагаю, что установившейся практикой является установка и чтение хеш-дополнения к URL-адресу, например

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

Мне известно о Flex History Manager, но мне было интересно, есть ли какие-нибудь хорошие альтернативы для рассмотрения. Также будет заинтересован в общем решении AJAX или передовой практике.

Ответы [ 5 ]

4 голосов
/ 06 ноября 2008

SWFAddress широко используется и испытан. Это делает почти тривиальным (если вы планируете заранее) обработку глубоких ссылок во Flash. Он предоставляет библиотеки JS и AS, которые работают вместе и делают весь процесс довольно надежным. Вы бы хотели посмотреть что-то вроде RSH для AJAX.

2 голосов
/ 06 ноября 2008

Я использовал swfadress для некоторых мелких вещей.

2 голосов
/ 06 ноября 2008

Для AJAX что-то вроде Действительно простая история отлично.

0 голосов
/ 02 января 2009

Я развернул свои собственные решения, которые были очень просты, как это:

(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', чтобы оно отвечало соответственно в зависимости от нового значения. Подход работает в супер простых случаях.

0 голосов
/ 06 ноября 2008

Это может показаться немного окольным, но я сейчас использую для этого среду dojo. Есть dojo.back, который был очень полезен, когда мой пользовательский интерфейс был в основном JS / HTML. Теперь, когда я пошел на изгиб для большей мощности, плавной анимации и стабильности браузера, единственное, что мне нужно использовать, это обратный URL.

У FlexBuilder, похоже, была собственная история браузера в проектах по умолчанию.

Кроме того, в Flex 3 Cookbook есть рецепт использования mx.managers.HistoryManager для создания собственного управления историей. У меня есть планы когда-нибудь попробовать это, чтобы снять нашу зависимость от dojo.back, но я еще не успел.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...