что не так с использованием 'javascript: history.go (-1)'? - PullRequest
6 голосов
/ 25 февраля 2011

наткнулся на некий стеб твиттер о том, как ужасно использовать

javascript:history.go(-1)

конечно без намеков на то, почему.

Если это так ужасно, почему? Какая альтернатива? (кроме history.back (), который, кажется, делает то же самое). Это вопрос кросс-браузерной совместимости?

Например, я видел, как оно использовалось на странице ошибок, чтобы позволить пользователям попытаться «вернуться», используя приведенное выше.

Я пробовал гугл, но безрезультатно, почему его так ужасно использовать. Любые указатели / объяснения будут оценены.

Спасибо.

Ответы [ 2 ]

5 голосов
/ 25 февраля 2011

Возможно, они имели в виду использование псевдопротокола javascript:, что, как правило, означает, что это атрибут href привязки, что уродливо. Это не настоящая ссылка, и с отключенным JavaScript она ничего не сделает, пока выглядит как функциональная ссылка. Я думаю, что единственное допустимое использование для этого протокола - для букмарклетов.

Кроме того, как указывает Рассел Диас , он делает то же самое, что и кнопка «назад», так какой смысл иметь его? Должна ли у нас быть кнопка перезагрузки, которая вызывает window.location.reload()?

3 голосов
/ 25 февраля 2011

С макушки головы. Я считаю, что этот javascript имитирует кнопку возврата браузера. Никогда нельзя быть слишком уверенным в том, как пользователь попал на определенную страницу, то есть он мог попасть на страницу через внешний сайт. Поэтому эта реализация просто отправит их обратно, что может быть нежелательным результатом.

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