哪些浏览器不支持location.href以及如何处理?

时间:2011-06-29 21:34:22

标签: javascript html

我的情况是PC用户的浏览器(我不知道它是哪个浏览器)不支持location.hrefhttp://www.w3schools.com/jsref/prop_loc_href.asp

JavaScript已开启。原因fancyBox显示登录弹出窗口,结果是 - location.href更改为./admin.php?act=loggedok(例如)

有人能告诉我如何检测这个以及如何处理这个问题吗?

这可以锁定这个JS代码吗?

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

5 个答案:

答案 0 :(得分:2)

您需要确保已启用用户浏览器中的Javascript支持。 正如您在w3schools网站上看到的那样,所有主流浏览器都支持它。

此链接可以提供帮助:Mozilla: location

答案 1 :(得分:2)

导航器的位置对象在任何地方都受支持..您可以做的是简单检查位置是否为arround,然后根据需要做出反应..

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
}

顺便说一句;在一个noscript标签中,你不能做任何javascript,所以你不能“对用户关闭javascript做出反应”。但是你可以用这样的方式显示额外的html,这显示他仍然生活在90年代的用户并且应该更新他的IE3并启用javascript;)

答案 2 :(得分:0)

正如Andron所说,除非他们专门禁用javascript,否则所有主流浏览器都应该支持它。您可以使用<noscript>标记告诉用户。

答案 3 :(得分:0)

为什么不使用

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

代替?

它适用于所有浏览器,除非它们已禁用javascript

答案 4 :(得分:0)

问题是javascript不受支持,关闭,或者浏览器不支持location_location的基本简写的location对象。因此使用:

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