一个奇怪的链接问题,高手指点!
<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标签的默认事件,每个浏览器解释的不同,所以有的管用有的不管用
------其他解决方案--------------------
因为链接上需要用到一些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:methodName('hi.html')">ClickwinOpen</a>”这样的不行?