2009-06-04 32 views

回答

186
window.location.href = 'URL'; 

是改變當前窗口位置的標準實現。

+18

移動你的頁面你有一個參考,以表明該window.location.href是標準的執行?那麼這個標準對所有瀏覽器同樣適用嗎?您當然看起來很有知識,15+票(加上接受的答案)有助於使它更具權威性,但我認爲最好是從瀏覽器開發團隊獲得支持索賠的文檔。 – Goyuix 2010-12-09 17:37:29

+5

@Goyuix,可能更準確地說`window.location.href`是完整的實現,但`window.location`完成了同樣的事情。請參閱http://docs.sun.com/source/816-6408-10/location。htm:「如果你將一個字符串賦給一個對象的`location`屬性,JavaScript會創建一個`location`對象並將該字符串賦值給它的`href`屬性。」 – 2010-12-09 18:36:41

+2

看起來像這些人決定它是個人喜好:https://developer.mozilla.org/Talk:en/DOM/window.location。或者看到底部附近的例子,它們只使用`window.location`,但這並不一定表明:https://developer.mozilla.org/en/window.location。 – 2010-12-09 18:41:29

1

真的沒有差別;大約有5種不同的方法。但是,我看到的那些最經常document.locationwindow.location,因爲它們是由所有主流瀏覽器的支持。 (我個人從未見過window.navigate用於生產代碼,所以也許它沒有很好的支持?)

2

我會用window.location = "http://...";去。我已經編寫了跨瀏覽器的JavaScript幾年,我從來沒有遇到過使用這種方法的問題。

window.navigatewindow.location.href似乎有點奇怪我。

6

document.locatio n是(但不推薦使用仍然存在)只讀字符串屬性,通過document.url取代。

6

window.location會影響到瀏覽器的目標。 document.location只會影響你的瀏覽器和frame/iframe。

5

window.location也影響到框架上,

的最佳形式,我發現是:

parent.window.location.href 

而且更糟糕的是:

parent.document.URL 

我做了一個大規模的瀏覽器測試,以及一些帶有幾個插件的罕見IE獲取第二種形式的未定義。

4

window.navigate在某些瀏覽器不支持,所以應該儘量避免。任何的使用位置屬性的其他方法是最可靠和一致的方法

-4

可以使用

window.location.href =Url; 
相關問題