window.open()方法(弹出层)
1, 最主要的弹出窗体代码
window.open('page.html');
2, 经过设置后的弹出窗体
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') //该句写成一行代码
參数解释:
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为同意。
3, 用函数控制弹出窗体
以下是一段完整的代码
<html>
<head>
<script LANGUAGE="JavaScript">
<!--
function openwin() {
window.open ("page.html", "newwindow", "height=100, width=400, toolbar =no, menubar=no, scrollbars=no, resizable=no, location=no, status=no")
//写成一行
}
//-->
</script>
</head>
<body onload="openwin()">
随意的页面内容...
</body>
</html>
解释:这里定义了一个函数openwin(), 函数内容就是打开一个窗体。
在调用它之前没有不论什么用途。怎么调用呢?
方法一:<body onload="openwin()"> 浏览器读页面时弹出窗体;
方法二:<body onunload="openwin()"> 浏览器离开页面时弹出窗体;
方法三:用一个连接调用:
<a href="#" onclick="openwin()"> 打开一个窗体</a>
注意:使用的"#"是虚连接。
方法四:用一个按扭调用:
<input type="button" onclick="openwin()" value="打开窗体" />
4, 弹出两个窗体
对代码略微修改例如以下:
<script LANGUAGE="JavaScript">
<!--
function openwin() {
window.open ("page.html", "newwindow", "height=100, width=100, top=0, left=0,toolbar=no, menubar=no, scrollbars=no, resizable=no, location=n
o, status=no")//写成一行
window.open ("page2.html", "newwindow2", "height=100, width=100, top=100, left=100,toolbar=no, menubar=no, scrollbars=no, resizable=no, loca
tion=no, status=no")//写成一行
}
//-->
</script>
为避免弹出的2个窗体覆盖,用top和left控制一下弹出的位置不要相互覆盖就可以。
最后用上面的说过的四种方法调用就可以。
注意:2个窗体的name(newwindow与 newwindow2)不要同样,或者干脆所有为空。
5, 主窗体打开文件1.htm,同一时候弹出小窗体page.html
例如以下代码增加主窗体<head>区:
function openwin()
{
window.open("page.html","","width=200,height=200")
}
增加body区:
<a href="1.htm" onclick="openwin()">open</a>就可以。
6, 弹出的窗体之定时关闭控制
将一小段代码增加弹出的页面(注意是增加page.html的HTML中。可不是主页面中。否则......),让它在10秒后自己主动关闭是不是更酷了?
function closeit()
{
setTimeout("selft.close()", 10000) //毫秒
}
然后。在body 中加入:<body onload="closeit()">就可以。
7, 在弹出窗体中加上一个关闭按扭
<input type="button" value="关闭" onclick="window.close()">
8, 内包括的弹出窗体---一个页面两个窗体
上面的样例都包括两个窗体。一个是主窗体。还有一个是弹出的小窗体。通过以下的样例。你能够在一个页面内完毕上面的效果。
<html>
<head>
<SCRIPT LANGUAGE="JavaScript">
function openwin()
{
OpenWindow=window.open("", "newwin", "height=250, width=250,toolbar=no ,scrollbars="+scroll+",menubar=no");
//写成一行
OpenWindow.document.write("<TITLE>样例</TITLE>")
OpenWindow.document.write("<BODY BGCOLOR=#ffffff>")
OpenWindow.document.write("<h1>Hello!</h1>")
OpenWindow.document.write("New window opened!")
OpenWindow.document.write("</BODY>")
OpenWindow.document.write("</HTML>")
OpenWindow.document.close()
}
</SCRIPT>
</head>
<body>
<a href="#" onclick="openwin()">打开一个窗体</a>
<input type="button" onclick="openwin()" value="打开窗体">
</body>
</html>
OpenWindow.document.write()里面的代码不就是标准的HTML吗?仅仅要依照 格式写很多其它的行就可以。
千万注意多一个标签或少一个标签就会出现错误。记得用 OpenWindow.document.close()结束啊。
9, 终极应用---弹出的窗体这Cookie控制
回忆一下,上面的弹出窗体尽管酷,可是有一点小毛病。比方你将上面的脚本放在一个须要频繁经过的页面里(比如首页)。那么每次刷新这个页面,窗体都会弹出一次,是不是很烦人?
有解决的办法吗?我们使用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){
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 ladpopup()
{
if(get_cookie('popped=yes'))
{
openwin()
document.cookie="popped=yes";
}
}
最后,用<body onload="loadpopup()">
父级.aspx代码例如以下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="弹出窗体.aspx.cs" Inherits="弹出窗体" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title> </head>
<body onbeforeunload="return confirm('确定要离开吗?')">
<form id="form1" runat="server">
<div> <input id="Button1" type="button" value="button" onclick="window.open('ChildWin.aspx','弹出框','width=900,height=450,top=300,left=300');"/></div>
</form>
</body>
</html>
ChildWin.aspx代码例如以下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ChildWin.aspx.cs" Inherits="ChildWin" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div> <asp:BulletedList ID="BulletedList1" runat="server" Width="526px">
<asp:ListItem>1</asp:ListItem>
<asp:ListItem>2</asp:ListItem>
<asp:ListItem>3</asp:ListItem>
<asp:ListItem>4</asp:ListItem>
<asp:ListItem>5</asp:ListItem>
<asp:ListItem>6</asp:ListItem>
<asp:ListItem>7</asp:ListItem>
<asp:ListItem>8</asp:ListItem>
</asp:BulletedList> <br />
<input id="Button1" type="button" value="关闭" OnClick="window.close();"/></div>
</form>
</body>
</html>
window.open()方法(弹出层)的更多相关文章
- layer弹出层不居中解决方案,layer提示不屏幕居中解决方法,layer弹窗不居中解决方案
layer弹出层不居中解决方案,layer提示不屏幕居中解决方法,layer弹窗不居中解决方案 >>>>>>>>>>>>> ...
- JavaScript学习笔记(一)——延迟对象、跨域、模板引擎、弹出层、AJAX示例
一.AJAX示例 AJAX全称为“Asynchronous JavaScript And XML”(异步JavaScript和XML) 是指一种创建交互式网页应用的开发技术.改善用户体验,实现无刷新效 ...
- JavaScript学习总结(一)——延迟对象、跨域、模板引擎、弹出层、AJAX示例
一.AJAX示例 AJAX全称为“Asynchronous JavaScript And XML”(异步JavaScript和XML) 是指一种创建交互式网页应用的开发技术.改善用户体验,实现无刷新效 ...
- zDiaLog弹出层
zDiaLog弹出层 立即下载 插件描述:zDiaLog弹出层 弹出框: 代替window.open.window.alert.window.confirm:提供良好的用户体验: 水晶质感,设计细腻 ...
- Jquery和Javascript 实际项目中写法基础-弹出窗和弹出层 (4)
一.实际项目中有很多如下界面效果. 二.该效果可以归结为弹出窗或者弹出层来实现的,为什么这么说?看如下代码: <!DOCTYPE html> <html> & ...
- pc端有弹出层 并有滚动的时候遇到的问题以及解决
有时候页面会遇到这样一个问题,页面有个弹出层 ,弹出层是有动条的,当弹出层滚完的时候,后面的页面也会滚动,但是我们希望是后面的页面不滚动;代码如下 1:弹出层出现的时候设置 $('body').css ...
- ASP.NET—013:实现带控件的弹出层(弹出框)
http://blog.csdn.net/yysyangyangyangshan/article/details/38458169 在页面中用到弹出新页面的情况比较多的,一般来说都是使用JS方法sho ...
- Layer组件多个iframe弹出层打开与关闭及参数传递
一.Layer简介 Layer是一款近年来备受青睐的web弹层组件,基于jquery,易用.实用,兼容包括IE6在内的所有主流浏览器,拥有丰富强大的可自定义的功能. Layer官网地址:http:// ...
- 权限管理系统之LayUI实现页面增删改查和弹出层交互
由于对LayUI框架不太熟悉,昨天抽空看了下LayUI的文档,今天在网上找了使用LayUI进行增删改查相关内容,自己照葫芦画了个瓢,画瓢部分不是很难,主要是下午遇到了一个弹出层的问题耗时比较久. 同一 ...
- 移动端和PC端页面常用的弹出层
我们在页面的时候,很多时候用到了弹出层,消息提醒,确认框等等,统一样式的弹出框可以使页面更加优美.在此,我整理一下我们项目的移动端和PC端页面常用的弹出层. 一.移动端 我们需在页面引入弹出框的样式和 ...
随机推荐
- [转]发布基于T4模板引擎的代码生成器[Kalman Studio]
本文转自:http://www.cnblogs.com/lingyun_k/archive/2010/05/08/1730771.html 自己空闲时间写的一个代码生成器,基于T4模板引擎的,也不仅是 ...
- Jquery课堂上课了,第一节Jquery选择器$
Jquery是优秀的Javascrīpt框架,$是jquery库的申明,它很不稳定(我就常遇上),换一种稳定的写法jQuery.noConflict(); jQue ...
- MVC系列学习(二)-初步了解ORM框架-EF
1.新建 一个控制台项目 2.添加一个数据项 a.选择数据库 注:数据库中的表如下: b.选择EF版本 c.选择表 3.初步了解EF框架 看到了多了一个以 edmx后缀的文件 在edmx文件上,右击打 ...
- 常用animation动画
/*编辑动画名*/ animation-name: myDemo; /*动画持续时间*/ animation-duration: 6s; /*动画方向*/ /*reverse 反向*/ /*alter ...
- oracle for linux服务器磁盘空间不足,通过过期的文件释放磁盘空间
--2013-09-16截取的数据-- 使用df-h命令查看系统磁盘空间 [root@erpdbs PROD]# df -h Filesystem Size Used Avail Use% Mount ...
- c++将bool变量以文字形式打印
#include <iostream> // std::cout, std::boolalpha, std::noboolalpha int main () { bool b = true ...
- FTP工作原理
FTP工作原理 FTP两种传输方式:1.ASCII传输2.二进制传输 FTP主被动原理: 主动方式:1.用户与服务器建立控制通道2.客户端发出PORT指令,主动告诉服务器端口号3.服务器主动通过20端 ...
- NSOperationQueue和GCD的区别,以及在什么场合下使用
1> GCD是纯C语言的API .NSOperationQueue是基于GCD的OC的封装. 2> GCD只支持FIFO队列,NSOperationQueue可以方便设置执行顺序,设置最大 ...
- 换个语言学一下 Golang (4)——变量与常量
一.变量定义 所谓的变量就是一个拥有指定名称和类型的数据存储位置. //看一个例子 package main import ( "fmt" ) func main() { var ...
- ArcEngine生成矩形缓冲区
这里生成缓冲区肯定是根据点进行生成的,说是生成缓冲区其实是根据点生成面.具体思路如下:首先根据点获取要生成矩形缓冲区的四个顶点的坐标,然后将这四个点生成面即可得到所谓的矩形缓冲区. //首先获取要生成 ...