javascript弹出窗口 window.open使用方法以及参数说明分析篇

window.open使用方法以及参数说明
一、window.open()支持环境:   
  JavaScript1.0+/JScript1.0+/Nav2+/IE3+/Opera3+
  
二、基本语法:
  
  window.open(pageURL,name,parameters)
  
  其中:
  pageURL 为子窗口路径
  name 为子窗口句柄
  parameters 为窗口参数(各参数用逗号分隔)
  
三、各项参数
  
  其中yes/no也可使用1/0;pixel value为具体的数值,单位象素。
  
  参数 | 取值范围 | 说明   | |
  alwaysLowered | yes/no | 指定窗口隐藏在所有窗口之后
  alwaysRaised | yes/no | 指定窗口悬浮在所有窗口之上
  depended | yes/no | 是否和父窗口同时关闭
  directories | yes/no | Nav2和3的目录栏是否可见
  height | pixel value | 窗口高度
  hotkeys | yes/no | 在没菜单栏的窗口中设安全退出热键
  innerHeight | pixel value | 窗口中文档的像素高度
  innerWidth | pixel value | 窗口中文档的像素宽度
  location | yes/no | 位置栏是否可见
  menubar | yes/no | 菜单栏是否可见
  outerHeight | pixel value | 设定窗口(包括装饰边框)的像素高度

  outerWidth | pixel value | 设定窗口(包括装饰边框)的像素宽度
  resizable | yes/no | 窗口大小是否可调整
  screenX | pixel value | 窗口距屏幕左边界的像素长度
  screenY | pixel value | 窗口距屏幕上边界的像素长度
  scrollbars | yes/no | 窗口是否可有滚动栏
  titlebar | yes/no | 窗口题目栏是否可见
  toolbar | yes/no | 窗口工具栏是否可见
  Width | pixel value | 窗口的像素宽度
  z-look | yes/no | 窗口被激活后是否浮在其它窗口之上
下面俺就带您剖析它的奥秘。
【1、最基本的弹出窗口代码】
其实代码非常简单:

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

因为着是一段javascripts代码,所以它们应该放在<SCRIPT LANGUAGE="javascr
ipt">标签和</script>之间。<!-- 和 -->是对一些版本低的浏览器起作用,在这 些老浏览器中不会将标签中的代码作为文本显示出来。要养成这个好习惯啊。
window.open ('page.html') 用于控制弹出新的窗口page.html,如果page.html
不与主窗口在同一路径下,前面应写明路径,绝对路径(http://)和相对路径(..
/)均可。
用单引号和双引号都可以,只是不要混用。
这一段代码可以加入HTML的任意位置,<head>和</head>之间可以,<body>间</body>也可以,越前越早执行,尤其是页面代码长,又想使页面早点弹出就尽量往前放。
【2、经过设置后的弹出窗口】
下面再说一说弹出窗口的设置。只要再往上面的代码中加一点东西就可以了。
我们来定制这个弹出的窗口的外观,尺寸大小,弹出的位置以适应该页面的具体情况。

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

参数解释:
<SCRIPT LANGUAGE="javascript"> js脚本开始;
window.open 弹出新窗口的命令;
'page.html' 弹出窗口的文件名;
'newwindow' 弹出窗口的名字(不是文件名),非必须,可用空''代替;
height=100 窗口高度;
width=400 窗口宽度;
top=0 窗口距离屏幕上方的象素值;
left=0 窗口距离屏幕左侧的象素值;
toolbar=no 是否显示工具栏,yes为显示;
menubar,scrollbars 表示菜单栏和滚动栏。
resizable=no 是否允许改变窗口大小,yes为允许;
location=no 是否显示地址栏,yes为允许;
status=no 是否显示状态栏内的信息(通常是文件已经打开),yes为允许;
</SCRIPT> js脚本结束
【3、用函数控制弹出窗口】
下面是一个完整的代码。

...任意的页面内容...

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

这里定义了一个函数openwin(),函数内容就是打开一个窗口。在调用它之前没有任何用途。
怎么调用呢?
方法一:<body onload="openwin()"> 浏览器读页面时弹出窗口;
方法二:<body onunload="openwin()"> 浏览器离开页面时弹出窗口;
方法三:用一个连接调用:
<a href="#" onclick="openwin()">打开一个窗口</a>
注意:使用的“#”是虚连接。
方法四:用一个按钮调用:
<input type="button" onclick="openwin()" value="打开窗口">
【4、同时弹出2个窗口】
对源代码稍微改动一下:

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

为避免弹出的2个窗口覆盖,用top和left控制一下弹出的位置不要相互覆盖即可
。最后用上面说过的四种方法调用即可。
注意:2个窗口的name(newwindows和newwindow2)不要相同,或者干脆全部为空。
OK?
【5、主窗口打开文件1.htm,同时弹出小窗口page.html】
如下代码加入主窗口<head>区:
<script language="javascript">
<!--
function openwin() {
window.open("page.html","","width=200,height=200")
}
//-->
</script>
加入<body>区:
<a href="1.htm" onclick="openwin()">open</a>即可。
【6、弹出的窗口之定时关闭控制】
下面我们再对弹出的窗口进行一些控制,效果就更好了。如果我们再将一小段代码加入弹出的页面(注意是加入到page.html的HTML中,可不是主页面中,否则...),让它10秒后自动关闭是不是更酷了?
首先,将如下代码加入page.html文件的<head>区:
<script language="JavaScript">
function closeit() {
setTimeout("self.close()",10000) //毫秒
}
</script>
然后,再用<body onload="closeit()"> 这一句话代替page.html中原有的<BO
DY>这一句就可以了。(这一句话千万不要忘记写啊!这一句的作用是调用关闭窗口的代码,10秒钟后就自行关闭该窗口。)
【7、在弹出窗口中加上一个关闭按钮】
<FORM>
<INPUT TYPE='BUTTON' VALUE='关闭' onClick='window.close()'>
</FORM>
呵呵,现在更加完美了!
【8、内包含的弹出窗口-一个页面两个窗口】
上面的例子都包含两个窗口,一个是主窗口,另一个是弹出的小窗口。
通过下面的例子,你可以在一个页面内完成上面的效果。

function openwin()
{
OpenWindow=window.open("", "newwin", "height=250, width=250,toolbar=no
,scrollbars="+scroll+",menubar=no");
//写成一行
OpenWindow.document.write("例子 风越ASP代码生成器")
OpenWindow.document.write("")
OpenWindow.document.write("

Hello!

")
OpenWindow.document.write("New window opened!")
OpenWindow.document.write("")
OpenWindow.document.write("")
OpenWindow.document.close()
}

打开一个窗口

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

看看 OpenWindow.document.write()里面的代码不就是标准的HTML吗?只要按照格式写更多的行即可。千万注意多一个标签或少一个标签就会出现错误。记得用OpenWindow.document.close()结束啊。
【9、终极应用--弹出的窗口之Cookie控制】
回想一下,上面的弹出窗口虽然酷,但是有一点小毛病(沉浸在喜悦之中,一定没有发现吧?)比如你将上面的脚本放在一个需要频繁经过的页面里(例如首页),那么每次刷新这个页面,窗口都会弹出一次,是不是非常烦人?:-( 有解决的办法吗?Yes! ;-) Follow me.
我们使用cookie来控制一下就可以了。
首先,将如下代码加入主页面HTML的<HEAD>区:

function openwin(){
window.open("page.html","","width=200,height=200")
}
function get_cookie(Name) {
var search = Name + "="
var returnvalue = "";
if (document.cookie.length > 0) {
offset = document.cookie.indexOf(search)
if (offset != -1) {
offset += search.length
end = document.cookie.indexOf(";", offset);
if (end == -1)
end = document.cookie.length;
returnvalue=unescape(document.cookie.substring(offset, end))
}
}
return returnvalue;
}
function loadpopup(){
if (get_cookie('popped')==''){
openwin()
document.cookie="popped=yes"
}
}

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

然后,用<body onload="loadpopup()">(注意不是openwin而是loadpop啊!)
替换主页面中原有的<BODY>这一句即可。你可以试着刷新一下这个页面或重新进
入该页面,窗口再也不会弹出了。真正的Pop-Only-Once!
写到这里弹出窗口的制作和应用技巧基本上算是完成了

(0)

相关推荐

  • js中window.open的参数及注意注意事项

    IE9下使用window.open时需要注意name参数值不能有"-"出现,否则会出现脚本错误,IE9以及版本测试没有问题 window.open(URL,name,specs,replace) 参数 说明 URL 可选.打开指定的页面的URL.如果没有指定URL,打开与新的空白窗口 name 可选.指定target属性或窗口的名称.支持以下值: _blank - URL加载到一个新的窗口.这是默认 _parent - URL加载到父框架 _self - URL替换当前页面 _top

  • js中window.open()的所有参数详细解析

    [1.最基本的弹出窗口代码]  复制代码 代码如下: <SCRIPT LANGUAGE="javascript">  <!--  window.open ('page.html')  -->  </SCRIPT> 因为着是一段javascripts代码,所以它们应该放在<SCRIPT LANGUAGE="javascript">标签和</script>之间.<!-- 和 -->是对一些版本低的浏

  • javascript弹出窗口 window.open使用方法以及参数说明分析篇

    window.open使用方法以及参数说明一.window.open()支持环境: JavaScript1.0+/JScript1.0+/Nav2+/IE3+/Opera3+ 二.基本语法: window.open(pageURL,name,parameters) 其中: pageURL 为子窗口路径 name 为子窗口句柄 parameters 为窗口参数(各参数用逗号分隔) 三.各项参数 其中yes/no也可使用1/0:pixel value为具体的数值,单位象素. 参数 | 取值范围 |

  • JavaScript弹出窗口方法汇总

    本文实例汇总了常用的JavaScript弹出窗口方法,供大家对比参考,希望能对大家有所帮助.详细方法如下: 1.无提示刷新网页: 大家有没有发现,有些网页,刷新的时候,会弹出一个提示窗口,点"确定"才会刷新. 而有的页面不会提示,不弹出提示窗口,直接就刷新了. 如果页面没有form, 则不会弹出提示窗口 如果页面有form表单, a)<form  method="post" ...>     会弹出提示窗口 b)<form  method=&quo

  • JavaScript页面刷新与弹出窗口问题的解决方法

    一.无提示刷新网页 大家有没有发现,有些网页,刷新的时候,会弹出一个提示窗口,点"确定"才会刷新.而有的页面不会提示,不弹出提示窗口,直接就刷新了. 如果页面没有form,则不会弹出提示窗口. 如果页面有form表单, a)< form method="post" ...> 会弹出提示窗口 b)< form method="get" ...> 不会弹出 二.javascript刷新页面的方法 window.location

  • javascript弹出窗口实现代码

    很多网页都实现了弹出窗口,使用方面,特别的人性化,本文就大家介绍javascript实现弹出窗口特效,具体代码如下: <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>弹出窗口</title> <script src="js/jquery-1.11.1.js"></sc

  • Javascript弹出窗口的各种方法总结

    复制代码 代码如下: //关闭,父窗口弹出对话框,子窗口直接关闭this.Response.Write("<script language=javascript>window.close();</script>"); //关闭,父窗口和子窗口都不弹出对话框,直接关闭this.Response.Write("<script>");this.Response.Write("{top.opener =null;top.clos

  • 23个Javascript弹出窗口特效整理

    1. Lightview Lightview是一个基于Prototype与Script.aculo.us开发,用于创建可以覆盖整个页面的模式对话框.展示的内容不仅可以是图片.文字.网页.通过Ajax 调用的内容,还可以是Quicktime/Flash影片都能够以非常酷的效果展示. 2. ThickBox (演示地址) ThickBox是一个模式对话框UI控件.基于jQuery开发,可以用来展示单张或多张图片,内嵌的内容,iframed的内容,或通过Ajax获取的内容. 3. Fonshen JS

  • javascript 弹出窗口中是否显示地址栏的实现代码

    Question : 在IE 7中弹出页面后,总是会显示地址栏,而该地址栏是不希望在程序中出现的,况且也影响美观.而在IE6中就不会出现地址栏. Solution: 工具-->Internet 选项-->安全-->自定义级别-->允许网站打开没有地址栏或状态栏的窗口-->允许 这样设置了IE7后就不会在弹出窗口中出现地址栏了.IE7以及后续版本默认不可以打开不带地址栏的窗口,这样是为了安全起见. javascript的window.open也可以用来弹出新页面,而且通过设置参

  • Android Popupwindow弹出窗口的简单使用方法

    本文实例为大家分享了Android Popupwindow弹出窗口的具体代码,供大家参考,具体内容如下 代码很简单,没有和别的控件连用.布局自己随意定义,我的这个是最基础的,就直接上代码啦! 在MainActivity里 import android.content.Context; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.LayoutInflat

  • javascript弹出窗口中增加确定取消按钮

    比例a标签点击后,弹出带确定与取消的窗口,点击确定则执行一个动作,否则不执行. 首先我们用ecshop 模板使用举例 {if $votings eq 1} <a href="javascript:;" onclick="if (confirm('多次投票将扣除100个积分,您确定投票吗?')) {vote_this({$item.id},{$item.cat_id});}else{return false;}" id="supportme15&quo

  • 使用POST方式弹出窗口的两种方法示例介绍

    最近在做一个功能需要弹窗,但是不能用get方式,因为get方式对url的长度有限制,所以必须用post,总结了两个方法 1. 复制代码 代码如下: var $form1=$("<form action='"+url+"' id='f' name='f' method='post'></form>"); $form1.append($("<input type='hidden' name='"+i+"' va

随机推荐