日期:2014-05-16  浏览次数:20395 次

一个奇怪的链接问题,高手指点!

<a href="javascript:methodName('hi.html')">ClickwinOpen</a>



function methodName(obj){
window.open(obj);
}


问题:为什么在有的电脑上是正常的可以打开hi.html。在有的电脑上却没有反应?

在连接上这样写<a href="javascript:methodName('hi.html')">ClickwinOpen</a>还会有什么兼容性问题??

高手指点一下吧,谢谢!!
------最佳解决方案--------------------
和浏览器设置有关,有的电脑上浏览器设置了禁止脚本打开新窗口,就不行了。直接用<a href="hi.html">ClickwinOpen</a>就完了,有些所谓特别需求想想其实没什么实用性。




------其他解决方案--------------------
跟浏览器安全选项有关系。
安全级别高的话就阻止window.open

而且现在因为之前window.open闹出来的一些肮脏的事情,好多浏览器都建议不要用window.open

所以楼主还是用
<a href="hi.html" target="_blank">ClickwinOpen</a>

这样也是新窗口打开页面
------其他解决方案--------------------
2楼说得对
------其他解决方案--------------------
“<a href="javascript:void(0);" onclick="javascript:methodName('hi.html')">ClickwinOpen</a>”

href="javascript:void(0)"
这个是阻止a标签默认事件,也就是说阻止a链接打开新的页面。

如果要是a标签上有点击事件的话,一般都会这么写的
------其他解决方案--------------------
引用:
引用:
“<a href="javascript:void(0);" onclick="javascript:methodName('hi.html')">ClickwinOpen</a>”

href="javascript:void(0)"
这个是阻止a标签默认事件,也就是说阻止a链接打开新的页面。

如果要是a标签上有点击事件的话,一般都会这么写……



这么写没有阻止a标签的默认事件,每个浏览器解释的不同,所以有的管用有的不管用
------其他解决方案--------------------
引用:
和浏览器设置有关,有的电脑上浏览器设置了禁止脚本打开新窗口,就不行了。直接用<a href="hi.html">ClickwinOpen</a>就完了,有些所谓特别需求想想其实没什么实用性。


因为链接上需要用到一些js获得的参数,所以必须要用function。

我问的是“<a href="javascript:methodName('hi.html')">ClickwinOpen</a>”和“<a href="javascript:void(0);" onclick="javascript:methodName('hi.html')">ClickwinOpen</a>”是不是有区别?

为什么有的电脑浏览器用“<a href="javascript:methodName('hi.html')">ClickwinOpen</a>”这样的不行?而用“<a href="javascript:void(0);" onclick="javascript:methodName('hi.html')">ClickwinOpen</a>”这样的却可以呢?
------其他解决方案--------------------
引用:
“<a href="javascript:void(0);" onclick="javascript:methodName('hi.html')">ClickwinOpen</a>”

href="javascript:void(0)"
这个是阻止a标签默认事件,也就是说阻止a链接打开新的页面。

如果要是a标签上有点击事件的话,一般都会这么写的


这个我知道。我只是问为什么“<a href="javascript:methodName('hi.html')">ClickwinOpen</a>”这样的不行?