Как отличить кнопку браузера назад / вперед?
Возможно ли это? еще лучше, возможно ли это с помощью jQuery?
Мне нужно знать, использовать ли кнопку Назад или кнопку вперед, чтобы я мог правильно использовать эффект перехода страницы, например. скользите слева направо, если они ударяют вперед и наоборот.
5 ответов:
Вы можете использовать действительно простую историю библиотеку
Но если вы хотите справиться с этим самостоятельно, вы можете использовать хэш-ключ (window.location.hash), установив, например, номер слайда. Когда пользователь нажмет кнопку Назад или далее, хэш-ключ изменится, вы обнаружите его и внесете изменения.К сожалению, вы должны проверить изменение самостоятельно, установив интервал (то есть: 300 мс) и проверить с предыдущим значением. HTML5 имеет событие onhashchange.
Пользователь может перейти на предыдущую страницу, не нажимая кнопку Назад в браузере. Он может щелкнуть правой кнопкой мыши и в контекстном меню выбрать опцию назад или вперед. Он также может нажать на клавиатуру, чтобы перейти на другую страницу. Так что не будет хорошей идеей поймать кнопку Назад.
Вы можете использовать историю object.It имеет массив посещенных страниц. Самая последняя запись - это последняя страница кнопки "вперед" или "назад".
@David
Поскольку кнопки возврата браузера не отслеживают запросы ajax, у разработчиков нет выбора, кроме как дополнить это отсутствие функциональности. Используя jquery, мы должны вручную отслеживать запросы ajax и вручную повторно запрашивать частичные страницы, чтобы дать пользователям то, что они хотят и ожидают.
Один из наших руководящих принципов проектирования таков:
НИКОГДА, НИКОГДА, НИКОГДА НЕ ЛОМАЙ КНОПКУ "НАЗАД".
Это означает не вмешиваться в его работу, что означает оставить его в покое.
Если вы должны знать, какую кнопку нажал пользователь, вам в значительной степени не повезло, и это по замыслу. Ребята, которые пишут браузеры, не хотят, чтобы вы это делали. Я не хочу, чтобы вы вмешивались в работу кнопки "Назад". Пользователи этого не хотят. Так, НЕ НАДО.
/ тирада.
Comments