javascript中back(-1)和go(-1)的區別


javascript中back(-1)和go(-1)的區別

一、總結

一句話總結:

數據

history.back(-1):直接返回當前頁的上一頁,數據全部消息,是個新頁面

history.go(-1):也是返回當前頁的上一頁,不過表單里的數據全部還在

 

1、開發人員可以知道用戶瀏覽的url么?

不可以

出於安全因素的考慮,開發人員無法得知用戶瀏覽過的URL,只能通過用戶訪問過的頁面列表,實現后退和前進,進而模仿瀏覽器的“后退”和“前進”按鈕

 

2、刷新?

history.back(0)

history.back(0) 刷新

 

 

二、頁面返回/取消到上個頁面back(-1)和go(-1)的區別

back() 加載 history 列表中的前一個 URL。
forward() 加載 history 列表中的下一個 URL。
go() 加載 history 列表中的某個具體頁面。

 

H5頁面做多了,自然就會做到頁面上的返回功能,返回功能大致有兩種:history.back(-1)和history.go(-1),今天我們來說說兩種方法的區別。

 

方法的用途

返回一個頁面方法有很多,就好比給返回按鈕綁定一個URL,但是如果一個頁面可以從很多頁面到達,那么這個頁面返回的頁面就不是固定的,那么綁定固定的URL顯然不妥。

方法的區別

history.back(-1):直接返回當前頁的上一頁,數據全部消息,是個新頁面

history.go(-1):也是返回當前頁的上一頁,不過表單里的數據全部還在

history.back(0) 刷新

history.back(1) 前進

history.back(-1) 后退

 

參考:頁面返回/取消到上個頁面back(-1)和go(-1)的區別 - u011277123的博客 - CSDN博客
https://blog.csdn.net/u011277123/article/details/54580090

 

三、history對象的一些知識點

history對象可以保存用戶的上網的歷史記錄,即從窗口被打開的那一刻算起。這里有個比較糾結的問題,出於安全因素的考慮,開發人員無法得知用戶瀏覽過的URL,

只能通過用戶訪問過的頁面列表,實現后退和前進,進而模仿瀏覽器的“后退”和“前進”按鈕

具體實現方法:

//后退一頁

history.go(-1);

==history.back();

//前進一頁

history.go(1);

==history.forward();

類似還有:

//前進兩頁

history.go(2);

......

還可以傳入字符串,但是不可控哦,比如

history.go("baidu.com");

是你最近打開的百度的鏈接,不一定是后退還是前進。

history.length,保存了歷史記錄的數量,注意:當頁面的URL改變時,就會生成一條記錄。

此外,在IE8+,Opera,Firefox,Safari3+,Chrome中,hash值(location.hash)改變也會生成一條新的歷史記錄。

 
參考:history對象的一些知識點 - 漆黑小T - 博客園
http://www.cnblogs.com/bug-master/p/6201488.html
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM