JS 打开新窗口

<script language="javascript" type="text/javascript">
function ShowDetails(bookURL)
{
var detailsWindow;
detailsWindow=window.open(bookURL,'','width=400, height=350');
detailsWindow.focus();
}
</script>

<a href="http://www.baidu.com" onClick="ShowDetails(this.href); return false;">
<img src="~" alt="Professional Ajax" />
</a>
请问一下,为什么点击以后,是在新窗口中打开的,怎么可以设置成 下面的效果呢?
原窗口停留在背景,但是不能操作,只读状态;新窗口出现在中间位置,宽度高度按设定值出现。
就像 http://zhidao.baidu.com/里面,点击登陆 以后那样子的。

请采用网页对话框的方式  showModalDialog 

showModalDialog是jswindow对象的一个方法,和window.open一样都是打开一个新的页面。
区别是:showModalDialog打开子窗口后,父窗口就不能获取焦点了(也就是无法操作了)。
可以在子窗口中通过设置window.returnValue的值,让父窗口可以获取这个returnvalue.

2.一个例子
1)主窗口main.html,
2)在主窗口中通过showModalDialog的方式打开子窗口sub.html
3)在子窗口中设置returnValue返回给主窗口使用

main.html

复制代码代码如下:

<HTML>
<HEAD>
<METANAME="GENERATOR"Content="oscar999">
</HEAD>
<script>
functionshowmodal()
{
varret=window.showModalDialog("sub.html?temp="+Math.random());
alert("subreturnvalueis"+ret);
}
</script>
<BODY>
<INPUTid=button1type=buttonvalue="opensub"name=button1onclick="showmodal();">
</BODY>
</HTML>


sub.html

<HTML>
<HEAD>
<METANAME="GENERATOR"Content="oscar999">
</HEAD>
<script>
functionreturnMain()
{
window.returnValue="returnfromsub";
window.close();
}
</script>
<BODY>
<INPUTid=button1type=buttonvalue="returnandclose"name=button1onclick="returnMain()">
</BODY>
</HTML>

这种目前只有IE可用,其它浏览器都不可用了

方式二:

采用其它js框架,弹出对话框的模式

温馨提示:内容为网友见解,仅供参考
第1个回答  2017-11-12
window.open是新窗口打开,而你想要的是页面中弹出框或者说是模态框的效果,不一样的概念的
第2个回答  2017-11-19
window.open('index.html');
第3个回答  2012-01-21
lightbox追问

不是很明白,麻烦解释一下

追答

这种样式叫lightbox,一般是用CSS来构建“中间的窗口”——一般只是个特殊div,而不是一个真正的新窗口。
主要用css的postion、z-index,具体代码嘛你搜索下就可以了。

追问

那请问一下,我用的那种Window.Open方法打开的是什么呢?也有宽度和高度设置啊?

追答

Window.Open打开的是一个真的窗口——相当于真的访问那个地址。
而Lightbox看起来像个窗口——但是压根没有访问任何地址。

本回答被提问者采纳

js打开新窗口方法整理
答案:在JavaScript中,打开新窗口可以使用window.open方法。详细解释:JavaScript中的window.open方法是一种非常常见且实用的方式,用于在新的浏览器窗口或标签页中打开一个新的网页。以下是关于该方法的一些重要细节和使用的知识点:1. 基本语法:window.open。其中,URL是你要打开的网页的网址;name是窗口...

js打开新窗口方法整理
新页面打开:使用`.target="_blank"`属性,或者通过表单提交。全屏模式:通过`window.open`方法设置`fullscreen`属性,代码示例显示如何在点击链接时全屏显示指定URL。固定大小:通过设置`window.open`的`width`和`height`属性,可控制窗口大小,如通过按钮触发。子窗口与父窗口控制:`.opener`属性可关闭父...

js 打开新窗口
打开新的窗口,窗口特性使用默认值 body script type=text\/javascript function openAnother() { window.open(http:\/\/.baidu.com); \/\/打开新窗口,窗口特性全部使用默认值。} \/script button οnclick=openAnother()打开新窗口\/button \/body 打开新的窗口,设置窗口特性 body button οnclick=openAnot...

js如何打开一个新窗口js如何打开一个新窗口快捷键
1.首先打开电脑,然后打开JS,在里面创建一个HTML文件“test”。2.然后将HTML框架添加到测试文件中。3.然后添加两个输入,一个是按钮,另一个是文件。ID设置为“打开”,样式类型为“显示:无”,并且不显示。4.打开后,只会显示这个“打开文件”按钮。5.现在将onclick事件添加到按钮中,并调用openfile...

js怎么打开一个新窗口js怎么打开一个新窗口快捷键
纯JS是实现不的,需要客户端配合。比如提供一些伪协议,或在js-sdk提供对应的方法。在html中怎样在新窗口打开新的页面?\/\/---JSwindow.open()window.open(pageURL,name,parameters)其中:pageURL为子窗口路径name为子窗口句柄parameters为窗口参数(各参数用逗号分隔)\/\/---链接啊啊啊 其中的target定义...

javascript,window,open是什么意思呢?
window.open 是 javaScript 打开新窗口的方法,在前面加上 javascript: 是用于 a 标签的超链接调用 js 方法。\\x0d\\x0awindow.open 基本语法: window.open(pageURL,name,parameters);具体示例window.open('page.html', 'newwindow', 'height=100, width=400, top=0, left=0, toolbar=no, ...

html或者jsp中如何点击超链接,打开一个新窗口,点击一次,打开一个?
在超链接中有一个target 属性,它是规定在何处打开 action URL的一个属性,其用法如下:工具原料:编辑器、浏览器 1、实现一个超链接打开后在新的页面打开,代码如下:2、点击这个连接将会在新的选项卡中打开test.html页面

js如何打开新页面打开新窗口打开页面js在新窗口打开页面
如何在js中打开新页面?制作标签的网页版,或者播放图层。网上有很多代码。jQuery弹出窗口,jQuery选项卡,Jquery选项卡。使用get将表单中填写的两个值提交到一个新页面,新页面将如下所示:ml?num1=yyyscript>标签,输入js代码:vara=inputtype=textvalue=test\/>;document.body.innerText=a;。3、浏览器...

用js从新窗口打开超链接的火狐兼容问题
if (!document.getElementsByTagName) return;var anchors = document.getElementsByTagName("a");for (var i=0; i<anchors.length; i++) { var anchor = anchors[i];if (anchor.getAttribute("href"))anchor.target = "_blank";} } window.onload = externallinks; 您可以在火狐社区了解更...

javascript关闭\/打开窗口的几种方法
>关闭广告 open函数打开新窗口 超级链接在新窗口中打开新页面 超级链接在父窗口中打开新页面 弹出窗口

相似回答