[HTML5] 如何使用 javascript 修改網址

日期:2016/12/08

 

大家好
偶而會遇到一種情況,就是需要修改上一頁的網址,或是目前網址且不轉換頁面
在 gmail 是很常見到的功能,那應該怎麼做呢?
 
寫得蠻詳細的
 
舉例:
 

var stateObj = { value: "testing...1" };
history.pushState(stateObj  , 'page add1', 'newpage1.html');
var stateObj = { value: "testing...2" };
history.pushState(stateObj  , 'page add2', 'newpage2.html');
 
window.onpopstate = function(event) {
  alert("目前位置:"+document.location+" ..."+history.state.value);
};

 
按上一頁會出現 testing...1
再按下一頁會出現 testing...2
也就是說他會直接修改目前網址且新增紀錄
並且修改  history.state 裡面傳送的 stateObj 這物件
 
再舉例
 
history.replaceState({page: 9}, 'title 9', 'newpage9.html');
 
輸入後會發現紀錄並沒有新增,而是直接替代了目前網址紀錄
 
基本上常用的只有 replaceState, pushState
 
至於 第2個參數title 確實沒有什麼作用,我也試不太出來
 
要特別注意的是,必須在 IE 10 之後才有辦法呼叫  history 物件中的 replaceState, pushState。
 
給大家參考囉
感恩!
 

 

相關文章

[心得] javascript 的 JSON 處理

[javascript] 取得網址上的 # 井字號 ( 錨點 ) 的值

留言板

歡迎留下建議與分享!希望一起交流!感恩!

comments powered by Disqus