(面试题)html中创建模态窗口的方法有哪些?
一、创建模态和非模态对话框
除了alert(""); confirm(""); prompt("");之外还有
创建模态对话框:
vReturnValue = window.showModalDialog(sURL [, vFreeArgument] [, sOrnaments]); 
如:window.showModalDialog("callee.htm")
创建非模态对话框:  
vReturnValue = window.showModelessDialog(sURL [, vFreeArgument] [, sOrnaments]);
如:window.showModelessDialog("callee.htm")
二、控制对话框大小和位置 
下面的代码将打开一个高200px、宽800px的对话框:
window.showModalDialog('callee.htm','','dialogHeight:200px;dialogWidth:800px');
以下代码,看看关闭居中属性后新窗口的位置:
window.showModalDialog('callee.htm','','dialogHeight:200px;dialogWidth:800px;center:no');
三、改变对话框外观
下面的代码将去除上下文关联提示图标、不显示状态栏、窗口边缘风格为凹陷:
showModelessDialog("callee.htm","","status:0;help:0;edge:sunken");
四、从父页面页面传递数据到子页面
(一)传递值类型数据 
在caller.htm页面中输入以下代码:
<INPUT TYPE="button" VALUE="创建模态对话框" onclick="fnOpenModal()">
<br><br>
<INPUT TYPE="button" VALUE="创建非模态对话框" onclick="fnOpenModeless()">
<script language="javascript">
<!--
function fnOpenModal()
{
window.showModalDialog("callee.htm","打开了一个新模态窗口")
}
function fnOpenModeless()
{
window.showModelessDialog("callee.htm","打开了一个新非模态窗口")
}
//-->
</script>
在callee.htm页面中输入以下代码:
<SCRIPT LANGUAGE="JavaScript">
<!--
alert(dialogArguments);
//-->
</SCRIPT>
(二)传递数组引用类型数据 (同样可以为对象传值)  
第一种值类型数据的传递中,在callee.htm页面中只能读取caller.htm页面的传递数据。
当需要对caller.htm页面的传递内容进行修改时,就需使用到数组引用类型的传递方式。  
首先,在caller.htm页面中输入以下代码:   
<INPUT TYPE="button" VALUE="创建模态对话框" onclick="fnOpenModal()">  
<br><br>   
<INPUT TYPE="button" VALUE="创建非模态对话框" onclick="fnOpenModeless()">  
<script language="javascript">  
<!--   
var a = new Array;  
a[0]="first"; 
a[1]="second";  
a[2]="third";  
function fnOpenModal()
{   
window.showModalDialog("callee.htm",a)  
}   
function fnOpenModeless()
{   
window.showModelessDialog("callee.htm",a)
 }   
// -->  
</script>   
然后在callee.htm页面中输入以下代码:  
<SCRIPT LANGUAGE="JavaScript"> 
 <!--   
a = dialogArguments;  //特殊关键字,表示接收的的参数对象
alert(a);   
a[0] = "fourth"; 
 // -->  
</SCRIPT>
(面试题)html中创建模态窗口的方法有哪些?的更多相关文章
- 使用jQuery创建模态窗口登陆效果
		
日期:2013-8-22 来源:GBin1.com 隐藏模态窗口技术是一种很好的解决方案,用于处理不是特有必要出现在网页上的界面元素.社交网络可以使用模态窗口传达私人讯息以及只针对会员才能看 到的表 ...
 - [Win32]创建模态窗口
		
http://www.cnblogs.com/zplutor/archive/2011/02/20/1958973.html 在Win32编程中,如果要显示一个模态窗口,一般是先创建对话框模板,然后使 ...
 - IE 中创建 子窗口 传值 与接收值 【window.showModalDialog】
		
父窗口 创建一个窗口 var backinfo = window.showModalDialog('UserSelect.aspx', '', 'dialogHeight=600px; dialogW ...
 - Javascript 中创建自定义对象的方法(设计模式)
		
Javascript 中创建对象,可以有很多种方法. Object构造函数/对象字面量: 抛开设计模式不谈,使用最基本的方法,就是先调用Object构造函数创建一个对象,然后给对象添加属性. var ...
 - Oracle中创建自增字段方法
		
oracle没有ORACLE自增字段这样的功能,但是通过触发器(trigger)和序列(sequence)可以实现. 下面给大家讲个例子: 1.在Oracle中创建一个表: .创建一个表 ) prim ...
 - 极其简单的用JS在浏览器中创建下载文件的方法
		
有这样一个需求,在js中动态创建一个页面,然后下载该页面为word文档,研究了一上午,最后发现实现起来如此简单. 在js中创建如下方法:(直接复制即可) function downloadFile(f ...
 - JavaScript中创建自定义对象的方法
		
本文内容参考JavaScript高级程序设计(第3版)第6章:面向对象的程序设计 ECMA-262中把对象定义为:“无序属性的集合,其属性可以包含基本值.对象或者函数.”我所理解的就是对象就是一个结构 ...
 - Floodlight 中创建消息对象的方法
		
在 floodlight 中创建各种openflow message 和 action 等採用的是简单工厂方式.BasicFactory类(实现OFMessageFactory接口.) ...
 - java4中创建内对象的方法
		
在java程序中,对象可以被显式地或者隐式地创建.四种显式的创建对象的方式: ● 用new语句创建对象 ● 运用反射手段,调用java.lang.Class 或者 java.lang. ...
 
随机推荐
- javascript编程思想
			
javascript编程开发修炼之道 提要文摘附注: 本文的核心内容是围绕javascript前端开发的编程技术要素,来深入地探讨编写高质量的javascript代码的方法.技巧.规范和最佳实践, ...
 - WinForm 之 程序退出
			
一.关闭窗体 在c#中退出WinForm程序包括有很多方法,如:this.Close(); Application.Exit();Application.ExitThread(); System.En ...
 - Android 如何关闭Navigation Bar M
			
前言 欢迎大家我分享和推荐好用的代码段~~ 声明 欢迎转载,但请保留文章原始出处: CSDN:http://www.csdn.net ...
 - kendoUpload
			
<style> .upfile { display: inline-block; width: %; } .upfile li { display: inline-block; width ...
 - ajax 与springmvc交互返回数据
			
1.controller将数据封装成json格式返回页面 @RequestMapping("/dataList") public void datalist(CsoftCunsto ...
 - Java之所有对象的公用方法>9.Always override hashCode when you override equals
			
You must override hashCode in every class that overrides equals.
 - js 正则表达式校验必须包含字母、数字、特殊字符
			
1.情景展示 在注册时,密码要求必须同时包含:字母.数字.特殊字符,如何实现? 2.原因分析 用正则表达式进行校验,是最方便的! 3.解决方案 // 密码必须由 8-64位字母.数字.特殊符号组成 ...
 - jquery 如何获取有多个class名的元素
			
1.情景展示 如何使用jquery获取带有多个class样式的元素? 2.解决方案 $("p.opinion.mb15.gray2e.max2line.mr20:contains('大摩 ...
 - 安装lr时无法将值Disable Script Debugger 写入注册表
			
1. 运行“regedit”打开注册表编辑器. 2. 右键点击权限.HKEY_CURRENT_USER-Softwart-Microsoft-Internet Explorer-Main 3. 勾选e ...
 - UML -  EA 序列图
			
序列图中的 Fragment 的类型(Loop.Opt.Par和Alt) (还有: ) 序列图主要用于展示对象之间交互的顺序. 序列图将交互关系表示为一个二维图.纵向是时间轴,时间沿竖线向下延伸.横向 ...