ПредишенСледващото

... просто в гърба натискане на бутони на браузъра.

Съдържанието на писмото се затваря и отваря страницата със списък на писмата, които потребителят е преди откриването на съдържанието на писмото. И ако това е нов раздел на браузъра? Бутонът за обратно няма да работи и не може да бъде натиснат. Има проблем. В нашата електронна поща не се поддържа от контрола на един от браузърите, повечето хора го разбират. Но има и решения! Някои от тях са свързани с промяна в решетка (# името) на в URL адреса, така че държавата не може да бъде спасен. Това не е съвършен, но тя работи във всички браузъри.

За щастие, проблемът е решен с помощта на методи HTML5 history.pushState и history.replaceState във връзка със събитията window.onpopstate.
демонстрация
изненадващо проста техника:

  1. Когато състоянието на, например, когато потребителят отвори писмо, history.pushState () за предаване на информация за състоянието и изпълнението. Това позволява на бутона за връщане назад, и най-важното не се включва на потребителя към страницата.
  2. Можете да стартирате history.pushState () толкова пъти, колкото е необходимо, или промяна на текущото състояние чрез history.replaceState ().
  3. Когато потребителят кликне на гърба (или напред), задейства window.onpopstate събитие. манипулатор функции могат да получат асоцииран статут и показват съответния раздел.

Недостатъкът на този не е съвместим с IE до версия 10. Ако имате нужда от подкрепа в IE9 и по-долу, има няколко други решения такива History.js и HTML5 API на историята.

Нека да се напише код. Да предположим, че показва резултата от заявка за Аякс:

history.replaceState () има същите аргументи и се използва, ако искате да се промени сегашното състояние на новото.

функция Хендлър, която се управлява след натискане на бутона "Назад" или бутона "Напред" в браузъра:

Местоположение URL може да се определи document.location (document.location.search document.location.hash и параметри за връщане и имена хеш съответно).

PushState държавен обект () или replaceState (), получен от събитието обекти държавна собственост. Можете да използвате тази информация, за да се покаже съответния екран.

Кликнете върху history.pushState няколко пъти, след това се върнете бутона, за да видим какво се случва в списанието.

интересни записи

Свързани статии

Подкрепете проекта - споделете линка, благодаря!