當我訪問JavaScript變量window.history.length
時,我返回了我的窗口歷史記錄的大小。當我從一個頁面向另一個頁面向前導航時,window.history
的長度增加。當我使用瀏覽器後退按鈕瀏覽歷史記錄時,即使我回顧歷史,window.history
的值也不會減少。爲什麼是這樣?爲什麼我的window.history大小不會減少?
0
A
回答
3
將window.history
想象爲訪問的邏輯增長列表或頁面數組。最初,只有最初的頁面。當您向前導航時,新條目將添加到列表的末尾,並且window.history.length
將增加1。當您返回頁面時,列表確實是而不是包含您之前被刪除的條目。相反,它仍然存在,然後你有機會前進(回到你剛剛回來的頁面)。
這意味着您不應該使用window.history
的長度作爲您瀏覽會話開始時間的指標。例如,如果您的window.history.length
的值爲5,那麼不是意味着如果您返回3頁,則將訪問您訪問的第2頁。 window.history.length
代表您在正向訪問的頁面數的長度,但沒有說明您當前在該列表中的是。
如果在向後導航之後,您訪問的前向頁與前一個鏈中的前一個頁面不同,則該列表將被更改,因此您現在不再能夠轉發的長度訪問條目你以前回來的。
+0
那麼你將如何去檢查你是否在堆棧的第一頁? – 2017-11-24 23:59:51
相關問題
- 1. 爲什麼我的SWF文件大小在減少內容時不會減少?
- 2. 爲什麼在更改行格式時我的表格大小不會減少?
- 3. 字體大小不會減少我的程序的大小
- 4. 爲什麼我的編譯文件的大小減少了?
- 5. 爲什麼div的大小自動減少,即使我給的大小
- 6. 爲什麼在使用BinaryWriter時二進制文件的大小不會減少
- 7. 爲什麼清理SQLite數據庫不會減小其大小?
- 8. 文字大小不會減少
- 9. 爲什麼不會減小chrono :: durations?
- 10. 減少我的NVARCHAR列的大小有什麼好處
- 11. 爲什麼free()函數調用會減小堆的大小?
- 12. Canvas減少了Jpeg的圖像大小,但是爲什麼?
- 13. in Hbase,儘量減少行和列的大小,爲什麼?
- 14. 減少會話的日誌大小
- 15. 爲什麼Chrome審計建議我最大限度地減少Cookie大小?
- 16. 爲什麼點擊PyCharm中的'內存指示器'會減少'Used'堆大小?
- 17. 爲什麼一個deque的大小會少於一個小數?
- 18. 當我增加最大堆大小時,爲什麼最大線程數會減少?
- 19. 爲什麼python tarfile gz沒有減少文件大小
- 20. 減少TimePicker大小
- 21. 減少BitmapDrawable大小
- 22. 爲什麼我的節點的樣式只會減少而不會增加?
- 23. 如何減少我的ArrayList的大小?
- 24. 減少會話大小運行時間
- 25. 是.htacess大小減少網站的性能?什麼是.htacess的最大大小?
- 26. Docker - 減少拉的大小
- 27. 減少dll的大小vC++
- 28. 減少紋理的大小
- 29. Solr大小的減少
- 30. 減少listitem的大小?
如果您導航回幾頁,然後訪問與以前不同的頁面,它可能會減少。在StackOverflow上點擊幾下,然後檢查長度。回去幾頁並再次檢查長度,它應該是相同的。點擊不同的長度,它會更小。 – 2014-11-03 04:01:38