window打开新窗口

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了window打开新窗口相关的知识,希望对你有一定的参考价值。

参考技术A 一、关闭当前页面,打开新的页面

(1)方法一:利用超链接

超链接<a href="http://www.cnblogs.com/liumengdie/" title="我的博客" >Welcome</a>

(2)方法二:利用js来跳转页面—— (在同当前窗口中打开窗口)

  window.location.href="http://www.cnblogs.com/liumengdie/" ;   

二、保留当前页面,打开一个新的tab页面

(1)方法一:利用超链接

超链接<a href="http://www.cnblogs.com/liumengdie/" title="我的博客" target="_blank">Welcome</a>

(2)方法二:利用js打开新页面(在另外新建窗口中打开窗口)

window.open("http://www.cnblogs.com/liumengdie/",“_blank”);     

三、保留当前页面,打开一个非tab页面

  window.open(url, "_blank", "scrollbars=yes,resizable=1,modal=false,alwaysRaised=yes");

请教一个js问题,关于window打开新窗口,并关闭新窗口。

首先我用下面方法打开一个新页面:
window.showModalDialog(url,window, 'dialogWidth:260px;dialogHeight:280px;edge:sunken;help:no;resizable:yes;scroll:no;status:no;unadorned:no ');

然后在新页面写了一个close按钮(onclick="close();"),触发后关闭当前页面:
function close()
window.opener=null;
window.open('','_self');
window.close();

问题是:新页面打开后,点击close按钮,页面自动刷新后最大化了,然后再次点击close按钮才关闭,什么原因啊??请教高手啊

第二句window.open('','_self')导致的页面刷新。

应该你把function close()这个函数删掉就解决问题了。有用请采纳。

你即便不定义这个函数onclick="close()"也能关闭窗口,如果关不了就用onclick="window.close()"追问

函数必须要有,因为我还要触发一些额外的操作。至于 window.opener=null; window.open('','_self');window.close();这两行代码是我上网查的,强制关闭窗口(不会弹出提示框)用的,而且起到关闭窗口的作用了,只是在刷新后第二次点击的时候起作用。即便是我去掉window.open('','_self')这句,直接window.close(),也会刷新一遍后窗口最大化,应该不是那句的问题.....

追答

那你把onclick="close()"变成onclick="closeWindow()"好了,然后
function closeWindow()
close();//和window.close()等效,也是你自定义close函数出问题的原因,你和window.close()冲突。例如var a = 5; window.a = 6; alert(a); 你会看到6而不是5。


从网上找的代码最好测试一下,很多都有兼容性问题。以上代码我在firefox上测试是没问题的,而且一般来说对于window.open打开的新窗口执行close就会关闭,根本不会有提示窗口的。那种强制关闭之类的不是IE6就是IE5.5才有的特征。

参考技术A function openNewWindow()
window.open("forwardnewpage.jsp","","left=30,top=30,height=620,width=820,toolbar=no,menubar=no,scrollbars=no,resizable=no,status=no,location=no,directories=no,copyhistory=no");

window.opener=null;
window.open("","_self");
window.close();

<input type="button" value="打开新窗口关闭旧的" onclick="openNewWindow()">

以上是关于window打开新窗口的主要内容,如果未能解决你的问题,请参考以下文章

window打开新窗口

window.open打开新窗口名写入内容 怎么才能保持新窗口原来的内容

js 用window.open(参数) 打开新窗口,在新窗口怎么获取传过来的参数

用window.open打开的新窗口如何居中弹出

window.open 打开新窗口带有原来地址怎么处理

window.open(url)新窗口打开链接被浏览器拦截解决方案