JavaScript弹出窗口方法汇总


Posted in Javascript onAugust 12, 2014

本文实例汇总了常用的JavaScript弹出窗口方法,供大家对比参考,希望能对大家有所帮助。详细方法如下:

1.无提示刷新网页:

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

2. javascript刷新页面的方法:

window.location.reload();

使用window.open()弹出的弹出窗口,刷新父窗口

window.opener.location.reload()

使用window.showDialog弹出的模式窗口

window.dialogArguments.location.reload();

3.javascript弹出窗口代码:
window.open()方式:
window.open()支持环境: JavaScript1.0+/JScript1.0+/Nav2+/IE3+/Opera3+
基本语法:

window.open(pageURL,name,parameters)

其中:
pageURL 为子窗口路径
name 为子窗口句柄
parameters 为窗口参数(各参数用逗号分隔)
 
示例:

<SCRIPT> 
<!-- 
window.open ('page.html','newwindow','height=100,width=400,top=0,left=0,toolbar=no,menubar=no,scrollbars=no, resizable=no,location=no, status=no') 
//写成一行 
--> 
</SCRIPT>

脚本运行后,page.html将在新窗体newwindow中打开,宽为100,高为400,距屏顶0象素,屏左0象素,无工具条,无菜单条,无滚动条,不可调整大小,无地址栏,无状态栏。
请对照。

上例中涉及的为常用的几个参数,除此以外还有很多其他参数,请见四。

各项参数
其中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 | 窗口被激活后是否浮在其它窗口之上
  

function ShowDialog(url) {
  var iWidth=300; //窗口宽度
  var iHeight=200;//窗口高度
  var iTop=(window.screen.height-iHeight)/2;
  var iLeft=(window.screen.width-iWidth)/2;
  window.open(url,"Detail","Scrollbars=no,Toolbar=no,Location=no,Direction=no,Resizeable=no,
Width="+iWidth+" ,Height="+iHeight+",top="+iTop+",left="+iLeft);
 }

  
window.showModalDialog方式:

基本介绍:

showModalDialog() (IE 4+ 支持)
showModelessDialog() (IE 5+ 支持)
window.showModalDialog()方法用来创建一个显示HTML内容的模态对话框。
window.showModelessDialog()方法用来创建一个显示HTML内容的非模态对话框。

使用方法:

vReturnValue = window.showModalDialog(sURL [, vArguments] [,sFeatures])
vReturnValue = window.showModelessDialog(sURL [, vArguments] [,sFeatures])

参数说明:

sURL--
必选参数,类型:字符串。用来指定对话框要显示的文档的URL。
vArguments--
可选参数,类型:变体。用来向对话框传递参数。传递的参数类型不限,包括数组等。对话框通过window.dialogArguments来取得传递进来的参数。
sFeatures--
可选参数,类型:字符串。用来描述对话框的外观等信息,可以使用以下的一个或几个,用分号“;”隔开。
1.dialogHeight :对话框高度,不小于100px,IE4中dialogHeight 和 dialogWidth 默认的单位是em,而IE5中是px,为方便其见,在定义modal方式的对话框时,用px做单位。
2.dialogWidth: 对话框宽度。
3.dialogLeft: 离屏幕左的距离。
4.dialogTop: 离屏幕上的距离。
5.center: {yes | no | 1 | 0 }:窗口是否居中,默认yes,但仍可以指定高度和宽度。
6.help: {yes | no | 1 | 0 }:是否显示帮助按钮,默认yes。
7.resizable: {yes | no | 1 | 0 } [IE5+]:是否可被改变大小。默认no。
8.status: {yes | no | 1 | 0 } [IE5+]:是否显示状态栏。默认为yes[ Modeless]或no[Modal]。
9.scroll:{ yes | no | 1 | 0 | on | off }:指明对话框是否显示滚动条。默认为yes。

下面几个属性是用在HTA中的,在一般的网页中一般不使用。

10.dialogHide:{ yes | no | 1 | 0 | on | off }:在打印或者打印预览时对话框是否隐藏。默认为no。
11.edge:{ sunken | raised }:指明对话框的边框样式。默认为raised。
12.unadorned:{ yes | no | 1 | 0 | on | off }:默认为no。

参数传递:

(1).要想对话框传递参数,是通过vArguments来进行传递的。类型不限制,对于字符串类型,最大为4096个字符。也可以传递对象,例如:
-------------------------------
parent.htm页面:

<script>
var obj = new Object();
obj.name="3water";
window.showModalDialog("modal.htm",obj,"dialogWidth=200px;dialogHeight=100px");
</script>

modal.htm页面:

<script>
var obj = window.dialogArguments
alert("您传递的参数为:" + obj.name)
</script>

(2)可以通过window.returnValue向打开对话框的窗口返回信息,当然也可以是对象。例如:

parent.htm页面代码:

<script>
str =window.showModalDialog("modal.htm",,"dialogWidth=200px;dialogHeight=100px");
alert(str);
</script>
modal.htm
<script>
window.returnValue="http://www.3water.com";
</script>

例子:

function ShowDialog(url) {
  var iWidth=300; //窗口宽度
  var iHeight=200;//窗口高度
  var iTop=(window.screen.height-iHeight)/2;
  var iLeft=(window.screen.width-iWidth)/2;
  window.showModalDialog(url,window,"dialogHeight: "+iHeight+"px; dialogWidth: "+iWidth+"px;
dialogTop: "+iTop+"; dialogLeft: "+iLeft+"; resizable: no; status: no;scroll:no");
 }

注意这里的第二个参数,window

4.模式窗口数据不刷新(缓存)问题

在jsp页面加入如下语句

<%
   response.setHeader("Pragma","No-Cache");
   response.setHeader("Cache-Control","No-Cache");
   response.setDateHeader("Expires", 0);
%>

5.模式窗口中,链接弹出新窗口问题:

◎_blank,在新浏览器窗口中打开链接文件。

◎_parent,将链接的文件载入含有该链接框架的父框架集或父窗口中。如果含有该链接的框架不是嵌套的,则在浏览器全屏窗口中载入链接的文件,就象_self参数一样。

◎_self,在同一框架或窗口中打开所链接的文档。此参数为默认值,通常不用指定。

◎_top,在当前的整个浏览器窗口中打开所链接的文档,因而会删除所有框架。

在</head>和<body>间加入<a href=“a.html”target="_blank "/>

6.无提示关闭页面的方法:

function CloseWin(){
  var ua = navigator.userAgent; var ie = navigator.appName=="Microsoft Internet Explorer"?true:false;
  if(ie){
 var IEversion = parseFloat(ua.substring(ua.indexOf("MSIE ")+5,ua.indexOf(";",ua.indexOf("MSIE "))));
  if( IEversion< 5.5){
  var str = '';
  document.body.insertAdjacentHTML("beforeEnd", str);
   document.all.noTipClose.Click();
  } else {
   window.opener =null; window.close();
  }
 }else{
 window.close()
 }
}

感兴趣的读者可以调试一下上述方法,相信会给大家带来一定的启发与帮助。

Javascript 相关文章推荐
JavaScript针对网页节点的增删改查用法实例
Feb 02 Javascript
原生JS实现美图瀑布流布局赏析
Sep 07 Javascript
11种ASP连接数据库的方法
Sep 18 Javascript
举例讲解JavaScript substring()的使用方法
Nov 09 Javascript
Javascript编程之继承实例汇总
Nov 28 Javascript
浅析Bootstrap表格的使用
Jun 23 Javascript
easyui 中的datagrid跨页勾选问题的实现方法
Jan 18 Javascript
JavaScript设置名字输入不合法的实现方法
May 23 Javascript
实现微信小程序的wxml文件和wxss文件在webstrom的支持
Jun 12 Javascript
Angular项目中$scope.$apply()方法的使用详解
Jul 26 Javascript
vue-auto-focus: 控制自动聚焦行为的 vue 指令方法
Aug 25 Javascript
关于IDEA中的.VUE文件报错 Export declarations are not supported by current JavaScript version
Oct 17 Javascript
Javascript中3种实现继承的方法和代码实例
Aug 12 #Javascript
jQuery判断checkbox是否选中的3种方法
Aug 12 #Javascript
jquery判断浏览器后退时候弹出消息的方法
Aug 11 #Javascript
jQuery根据ID获取input、checkbox、radio、select的示例
Aug 11 #Javascript
JavaScript中跨域调用Flash的方法
Aug 11 #Javascript
jQuery实现的一个自定义Placeholder属性插件
Aug 11 #Javascript
javascript中解析四则运算表达式的算法和示例
Aug 11 #Javascript
You might like
php 读取文件夹下所有图片、文件的实例
2018/10/17 PHP
ThinkPHP类似AOP思想的参数验证的实现方法
2019/12/18 PHP
laravel中Redis队列监听中断的分析
2020/09/14 PHP
24款非常有用的 jQuery 插件分享
2011/04/06 Javascript
调试代码导致IE出错的避免方法
2014/04/04 Javascript
jQuery获取标签文本内容和html内容的方法
2015/03/27 Javascript
JQuery通过AJAX从后台获取信息显示在表格上并支持行选中
2015/09/15 Javascript
微信小程序wx.request实现后台数据交互功能分析
2017/11/25 Javascript
Angular实现点击按钮控制隐藏和显示功能示例
2017/12/29 Javascript
Vue中v-for的数据分组实例
2018/03/07 Javascript
Vue封装一个简单轻量的上传文件组件的示例
2018/03/21 Javascript
原生javascript AJAX 三级联动的实现代码
2018/05/04 Javascript
微信小程序实现星星评价效果
2018/11/02 Javascript
js实现通过开始结束控制的计时器
2019/02/25 Javascript
vue+iview/elementUi实现城市多选
2019/03/28 Javascript
使用Vue调取接口,并渲染数据的示例代码
2019/10/28 Javascript
JavaScript实现动态留言板
2020/03/16 Javascript
基于javascript canvas实现五子棋游戏
2020/07/08 Javascript
Vue 实现拨打电话操作
2020/11/16 Javascript
5种Python单例模式的实现方式
2016/01/14 Python
Python第三方库xlrd/xlwt的安装与读写Excel表格
2017/01/21 Python
python的pdb调试命令的命令整理及实例
2017/07/12 Python
更换Django默认的模板引擎为jinja2的实现方法
2018/05/28 Python
python实现控制台打印的方法
2019/01/12 Python
对Python之gzip文件读写的方法详解
2019/02/08 Python
详解Python中正则匹配TAB及空格的小技巧
2019/07/26 Python
Python面向对象程序设计之继承、多态原理与用法详解
2020/03/23 Python
Python如何执行系统命令
2020/09/23 Python
详解移动端html5页面长按实现高亮全选文本内容的兼容解决方案
2016/12/03 HTML / CSS
安踏官方商城:anta.cn
2019/12/16 全球购物
英语翻译系毕业生求职信
2013/09/29 职场文书
高中政治教学反思
2014/01/18 职场文书
管理失职检讨书范文
2015/05/05 职场文书
创业计划书之烤红薯
2019/09/26 职场文书
使用HttpSessionListener监听器实战
2022/03/17 Java/Android
Z-Order加速Hudi大规模数据集方案分析
2022/03/31 Servers