2011-06-29 45 views
0

我有一種情況,PC用戶的瀏覽器(我不知道是哪個瀏覽器)不支持location.href,http://www.w3schools.com/jsref/prop_loc_href.asp哪些瀏覽器不支持location.href以及如何處理?

JavaScript is on。導致fancyBox顯示登錄彈出窗口,其結果是 - location.href更改爲./admin.php?act=loggedok(舉例)

任何人都可以告訴我如何檢測此問題以及如何處理此問題?

這是可能鎖定這個JS代碼?

location.href = "http://google.com/";

+2

這聽起來並不像你知道根本原因是什麼。我懷疑它是'location.href'。 –

+0

是的,法人客戶 - 很棒:(沒有信息, - 只是「不起作用」:( –

+0

)親愛的斯特凡。聽起來好像我找到了答案...當我明白這一點時,我很驚訝。 。在IE9中,作爲ex。 –

回答

2

你需要確保在用戶的瀏覽器的Javascript支持被打開。 正如您在w3schools網站上看到的,它受到所有主要瀏覽器的支持。

這個鏈接可以幫助:Mozilla: location

+0

不是關於JS的問題,它已啓用。函數不重定向。 –

0

正如安德龍說,所有主要的瀏覽器應該支持它,除非他們專門有禁用JavaScript。您可以使用<noscript>標籤告訴用戶這一點。

+0

不是關於JS啓用的問題。 –

+1

這只是一個參考。正如我先提到的,所有主流瀏覽器都支持location.href –

+0

-1你無法檢測到noscript標記中的東西 – japrescott

0

你爲什麼不使用

document.location.href = 'http://google.com/'; 

呢?

它適用於所有的瀏覽器,除非他們已禁用JavaScript

+0

document.location === window.location評估真實...他們是完全一樣的......當你給下來的票請嘗試並給出一個完整的解釋 – SimonQuest

+0

在支持的瀏覽器列表我不知道konquerror。也許這是問題ot她的瀏覽器像NN。 PS。也將使用這個... tnx –

0

的問題是無論是JavaScript是不支持的,關閉,或瀏覽器不支持定位對象,基本上是window.location的簡寫。因此,使用方法:

window.location.href="http://www.google.com"; 
+0

我沒有采取關於JS下來。只是 - 關於這個功能。原因重定向是從fancy-box中調用的,這通常顯示出來(我沒有用這個訪問PC,也不能和這個人交談)。 –

1

導航儀的定位對象是無處不在的支持..你可以做的是做一個簡單的檢查,如果位置是以防萬一,然後反應,因此,你需要..

if (window.location){ //or if (location in window) for modern browsers.. 
    window.location.href="www.google.com"; 
} 
else{ 
    alert("please enter www.google.com into your address bar"); // :P 
} 

Btw;在一個noscript標籤中,你不能做任何javascript,所以你不能「對javascript關閉的用戶做出反應」。但你可以用這種方式顯示額外的HTML,這表明用戶他仍然生活在90年代,應該更新他的IE3並啓用JavaScript;)

相關問題