2011-06-29 42 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;)

相关问题