Сводка методов перехода и обновления страницы в JS

JavaScript

window.location(.href)="URL"

фактически.hrefможно опустить

window.locationа такжеwindow.location.hrefДостигнутый эффект тот же

Например:

window.location = "http://www.baidu.com"
window.location.href = "http://www.baidu.com"

Оба вышеуказанных метода могут переходить с текущей страницы на целевую страницу.
разница заключается вwindow.locationОбъект возвращается, если нет.href, его параметр по умолчаниюhref

winodw.location.assign("URL")

Этот метод аналогичен предыдущему методу
Применение:

winodw.location.assign("http://www.baidu.com")

window.location.replace("URL")

Если вы используетеwindow.location.replace("http://www.baidu.com")Реализуйте страницу перехода, разница между ней и описанным выше методом заключается в том, что онаПосле перехода информация о странице перехода не будет сохранена.

Итак, если вы используетеhistoryКнопка возврата к истории недействительна

Его эффект аналогичен щелчку правой кнопкой мыши по веб-странице, открытию в новом окне или открытию в новой вкладке.
а такжеwindow.location.hrefДостигаемый эффект заключается в том, чтобы щелкнуть целевую ссылку на странице, а затем нажать кнопку возврата истории, чтобы вернуться на предыдущую страницу.

Перейти на страницу истории

Следующие два метода можно использовать для возврата на страницу истории, что эквивалентно нажатию кнопки «Назад» в верхнем левом углу страницы.

window.history.back();
window.history.go(-1);

backа такжеgoВ него можно поместить значения

Например: вставить-1Это означает вернуться на предыдущий уровень и поставить-2вернуться к вышестоящему и т. д.
И вы также можете поместить в него указанный путь маршрутизации, напримерwindow.history.go('../routes/admin/');Это перейдет к указанному модулю маршрутизации.

meta refresh

Если браузер пользователя отключенjavascript, то вы можете использоватьmeta refreshЧтобы добиться автоматического прыжка:

<noscript>
	<meta http-equiv="refresh" content="0;URL=http://www.baidu.com/">
</noscript>

Если вы хотите добиться автоматического перехода JS, вы можете добавить таймер:

setTimeout(function(){ ... }, 1000);

Перезагрузить эту страницу

Если ваша логика кода завершена и вы хотите перезагрузить страницу, вы можете использовать эти два метода:

window.location.reload()
window.location.replace()

Оба метода могут перезагрузить эту страницу, ноreplace()может привести к другомуURL
Например:window.location.replace("http://www.baidu.com")

window.navigate('URL')

window.navigate('URL')Этот метод предназначен только дляIEДа, не работает в других браузерах, таких как Firefox, в объекте окна HTML DOM он вообще не указанwindow.navigateЭтот метод, поэтому этот метод используется как можно реже, и лучше всего забыть о нем.

я, родитель, это, топ

top.location.href=”url”         在顶层页面打开url(跳出框架)  
self.location.href=”url”        仅在本页面打开url地址  
parent.location.href=”url”      在父窗口打开Url地址  
this.location.href=”url”        用法和self的用法一致

if (top.location == self.location)судить о текущемlocationБудь то верхний уровень запретитьframeссылка, если на странице есть пользовательскийframe, вы также можетеparent self topпереключиться на пользовательскийframe, эффект заключается в настройкеframeокно открытоurl.

Пример:

if(top != self){
	top.location.href = location.href;
}	//禁止frame引用

Ниже приведен пример найденный в интернете.Он не очень интуитивен.Можно добавить вышеуказанные три строчки кода,можно сначала удалить,а потом добавить.Посмотрите на эффект,он должен быть понятен

код top.html

<script language=javascript>
    function rs(){
        if(top !== self){
            top.location.href = location.href;
        }
        parent.left.location.href="top.htm" ;
        parent.bot.location.href="top.htm";
    }
< /script>
< input type=button name=name value="ksdj" onclick=rs();>

код test.html

<FRAMESET COLS="150,*">
	< FRAME SRC="left.htm" name=left>
	< FRAMESET ROWS="150,*">
		 < FRAME SRC="top.htm" name=top>
		 < FRAME SRC="bot.htm" name=bot>
	< /FRAMESET>
< /FRAMESET>

Попробуйте, может так получится!

topпредставляет главное окно,locationУказывает текущее окно, если ваш файл имеет только один кадр, нетiframeа такжеframe, то это точно так же, нет никакой разницы.

top.locationнаходится наверхуframeоткрыть новую страницу в
window.locationВ настоящее времяframeоткрыть новую страницу в
parent.locationОткрыть URL-адрес в родительском окне текущего окна

Распространенные способы перехода и обновления страниц JS

прыжок страницы

window.location.href="index.php";  
window.history.back(-1);//类似于按钮,参数是负几,就后退几次。  
window.navigate("index.jsp"); //navigate对象包含有关浏览器的信息,也可以作为页面跳转,后面直接加要跳转的地方。  

self.location.href=index.htm;  
//self指代当前窗口对象,属于window最上层的对象;  
//location.href 指的是某window对象的URL地址.  
//self.location.href指当前窗口的URL地址,去掉self默认为当前窗口的URL地址.  

top.location=index.php;  
//top 属性返回最顶层的先辈窗口。  
//该属性返回队一个顶级窗口的只读引用。  
//如果窗口本身就是一个顶级窗口,top 属性存放对窗口自身的引用。  
//如果窗口是一个框架,那么 top 属性引用包含框架的顶层窗口。

location.replace(document.referrer);  
document.referrer   
history.go(-1);//不刷新页面  
history.back();//不刷新页面  

Обновление страницы Javascript

1    history.go(0)   
2    location.reload()   
3    location=location   
4    location.assign(location)   
5    document.execCommand('Refresh')   
6    window.navigate(location)   
7    location.replace(location)   
8    document.URL=location.href 

Автоматическое обновление

Автоматическое обновление страницы: добавьте следующий код<head>в области
<meta http-equiv="refresh" content="2">
Где 2 означает обновление страницы каждые 2 секунды.

Автоматический переход на страницу: добавьте следующий код<head>в области
<meta http-equiv="refresh" content="2;url=http://www.baidu.com">
2 из них относятся к переходу через 2 секундыhttp://www.baidu.comстраница

JS реализует автоматическое обновление страницы

<script language="JavaScript">  
    setTimeout('window.location.reload()',1000) //指定1秒刷新一次  
</script>  

JS刷新框架的脚本语句

//如何刷新包含该框架的页面用   
[javascript] view plain copy print?
<script language=JavaScript>  
   parent.location.reload();  
</script>    

//子窗口刷新父窗口
[javascript] view plain copy print?
<script language=JavaScript>  
    self.opener.location.reload();  
</script>  
(或<a href="javascript:opener.location.reload()">刷新</a>   )  

//如何刷新另一个框架的页面用   
[javascript] view plain copy print?
<script language=JavaScript>  
   parent.另一FrameID.location.reload();  
</script>  

如果想关闭窗口时刷新或者想开窗时刷新的话,在<body>中调用以下语句即可。

метод jquery

$(location).attr('href', 'http://www.jb51.net');

$(window).attr('location','http://www.jb51.net');

$(location).prop('href', 'http://www.jb51.net')

^_<