history.go ('url') проблема - PullRequest
       13

history.go ('url') проблема

3 голосов
/ 08 июня 2011

Я видел, что метод history.go () может иметь два типа параметров:

see:

<a href="http://www.w3schools.com/jsref/met_his_go.asp" rel="nofollow">http://www.w3schools.com/jsref/met_his_go.asp</a> 

Но URL не работает вообще.

Я использую консоль браузера JavaScript для тестирования этого метода, но безуспешно.

Я знаю, что есть проблемы с безопасностью, что вы не можете читать записи истории.Вы можете просто вернуться назад и вперед.

Так почему этот строковый параметр указан во всех ссылках js?

Ответы [ 3 ]

12 голосов
/ 08 июня 2011

Предоставление URL-адреса в качестве параметра является нестандартной функцией и работает не во всех браузерах.Большинство браузеров принимают только относительные числа, например 1 или -1.

Из документации MDC (выделено мной):

[history.go(integerDelta)] Загружает страницу из истории сеанса, идентифицированную по ее относительному расположению, к текущей странице, например, -1 для предыдущей страницы или 1 для следующей.Когда integerDelta выходит за пределы (например, -1, если в истории сеанса нет ранее посещенных страниц), метод ничего не делает и не вызывает исключение. Вызов go() без параметров или с нецелым аргументом не имеет никакого эффекта (в отличие от Internet Explorer, который поддерживает строковые URL-адреса в качестве аргумента) .

Это то, что происходит, когдаВы используете W3Schools в качестве учебного ресурса; -)

2 голосов
/ 08 июня 2011

Если вы хотите использовать его с URL-адресом, просто используйте:

window.location.href="http://www.whereyouwannago.nl/";

URL-адрес, вероятно, еще существует для обратной совместимости

2 голосов
/ 08 июня 2011

MDC по крайней мере имеет это примечание:

Примечание: Internet Explorer поддерживает передачу строковых URL-адресов в качестве параметра go ();это нестандартно и не поддерживается Gecko.

Не знаю, почему он указан во многих ссылках.

...