window屬性:onhashchange

2018-05-07 14:29 更新

onhashchange屬性

當窗口的哈希值發(fā)生變化時,hashchange事件將會觸發(fā)。

onhashchange屬性語法

window.onhashchange = funcRef;

或者:

<body onhashchange =“funcRef();”>

覆蓋任何現有的事件處理程序。

為了將事件偵聽器添加到現有的事件處理程序集,請使用函數“addEventListener”:

window.addEventListener(“hashchange”,funcRef,false);

onhashchange屬性參數

funcRef
對函數的引用。

onhashchange屬性示例

if ("onhashchange" in window) {
    alert("The browser supports the hashchange event!");
}

function locationHashChanged() {
    if (location.hash === "#somecoolfeature") {
        somecoolfeature();
    }
}

window.onhashchange = locationHashChanged;

hashchange事件

觸發(fā)的hashchange事件具有以下字段:

字段 類型 描述
newURL DOMString 窗口正在導航到的新URL
oldURL DOMString 導航窗口的上一個URL

針對event.newURL和event.oldURL的解決方法

//let this snippet run before your hashchange event binding code
if(!window.HashChangeEvent)(function(){
	var lastURL=document.URL;
	window.addEventListener("hashchange",function(event){
		Object.defineProperty(event,"oldURL",{enumerable:true,configurable:true,value:lastURL});
		Object.defineProperty(event,"newURL",{enumerable:true,configurable:true,value:document.URL});
		lastURL=document.URL;
	});
}());

規(guī)范

規(guī)范 狀態(tài) 注釋
HTML Living Standard 
規(guī)范中的'GlobalEventHandlers'的定義。
Living Standard
 
HTML 5.1 
該規(guī)范中的'GlobalEventHandlers'的定義。
Recommendation
 
HTML5 
該規(guī)范中的'GlobalEventHandlers'的定義。
Recommendation
 

瀏覽器兼容性

電腦端 移動端
Chrome
Edge
Firefox
Internet Explorer
Opera
Safari
Androidwebview
Chrome for Android
Edge Mobile Firefox for Android
Opera for Android
iOS Safari
基本支持 支持 支持 支持:3.6 支持:8 支持:10 支持:5 支持 支持 支持 支持:4 支持:11 支持:5
以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號