有时候希望可以用js另开新窗口,但用 window.open方法打开窗口总是被浏览器阻止,
可以用下面的方法打开新窗口而不会遭到拦截:
方法一:
使用按钮来触发js函数,里面的window.open打开的弹出窗口有可能被浏览器阻止。
可以使用超链接来触发此js函数,这样就不会被当成弹出窗口而阻止了,如下:
<a href="#" onClick="javascript:showphpldapadmin();" >查询</a>
,在函数showphpldapadmin里面实现window.open。
方法二:
1.新添加一个Form
<form id="EmailForm" action="目标页" method="get" target="_blank">
<input id="emailid" name="emailid" type="hidden" />//隐藏域,用来放需要传递的参数
</form>
注意form的target属性要设置成 _blank
2.提交这个Form
function btnEditEmail_onclick() {
document.getElementById("emailid").value=id;//初始隐藏域
document.getElementById("EmailForm").submit();//提交
}
这样,就会打开新窗口定向到目标页了,而且不会 被阻止,同时用新窗口的window.opener还能访问 原窗口。