我的情况是PC用户的浏览器(我不知道它是哪个浏览器)不支持location.href
,http://www.w3schools.com/jsref/prop_loc_href.asp。
JavaScript已开启。原因fancyBox显示登录弹出窗口,结果是 - location.href更改为./admin.php?act=loggedok(例如)
有人能告诉我如何检测这个以及如何处理这个问题吗?
这可以锁定这个JS代码吗?
location.href = "http://google.com/";
答案 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";