JavaScript学习之一JavaScript浏览器对象模型详解---window对象(上)
1.1 BOM
BOM提供了一组以window为核心的对象,实现了对浏览器窗口的访问控制。BOM中定义了6种重要的对象:
- window对象表示浏览器中打开的窗口;
- document对象表示浏览器中加载页面的文档对象;
- location对象包含了浏览器当前的URL信息;
- navigation对象包含了浏览器本身的信息;
- screen对象包含了客户端屏幕及渲染能力的信息;
- history对象包含了浏览器访问网页的历史信息。
方法 |
用法 |
说明 |
window.moveBy 将浏览器窗口移动到指定位置(相对定位) |
window.moveBy(dx,dy) |
出于安全性和对用户有好的考虑,不允许使用JavaScript脚本将窗口移动到可视区域之外,必须始终保证浏览器窗口在屏幕的可视区域。 |
window.moveTo 将浏览器窗口移动到指定位置 (绝对定位) |
window.moveBy(x,y) |
如果指定的坐标(x,y)会使部分或全部窗口置于可视区域之外,那么窗口将停留在最接近屏幕边缘的位置。 |
window.resizeBy 将浏览器窗口的尺寸改变指定的宽度和高度(相对调整窗口大小) |
window.resizeBy(dw,dh) |
|
window.resizeTo 将浏览器窗口的尺寸改变指定的宽度和高度(绝对调整窗口大小) |
window.resizeTo(w,h) |
指定的宽度和高度不能为负数 |
2. 打开新窗口
用法:window.open([url],[target],[options])
参数url:打开新新窗口将要加载的url。如果未指定参数,将默认加载空白页。如:window.open("test.htm");
参数target:新打开窗口的定位目标或者名称
_self 在当前窗口加载新页面
_blank 在新窗口加载新页面
_parent 在父窗口加载新页面
_top 在顶层窗口加载新页面
参数options:新打开窗口的属性,是由若干个选项组成,选项之间用逗号分隔开,每个选项都包含了选项的名称和值。
选项 |
说明 |
height |
窗口的高度,单位像素 |
width |
窗口的宽度,单位像素 |
left |
窗口的左边缘位置 |
top |
窗口的上边缘位置 |
fullscreen |
是否全屏,默认值no |
location |
是否显示地址栏,默认值yes |
menubar |
是否显示菜单栏,默认值yes |
resizable |
是否允许改变窗口大小,默认值yes |
scrollbars |
是否显示滚动条,默认值yes |
status |
是否显示状态栏,默认值yes |
titlebar |
是否显示标题栏,默认值yes |
toolbar |
是否显示工具条,默认值yes |
window.open简单示例:
第一个页面代码:
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
3 <head>
4 <title>打开新窗口示例</title>
5 <style type="text/css">
6 #editor
7 {
8 width:300px;
9 }
10 #title, #editor textarea
11 {
12 width:100px;
13 height:80%;
14 }
15 </style>
16 <script type="text/javascript">
17 function newWin() {
18 //打开新窗口
19 var win = window.open("windowtwo.htm", "_blank", "toolbar=yes, location=yes, directories=no, status=no, menubar=yes, scrollbars=yes, resizable=no, copyhistory=yes, width=400, height=300");
20 }
21 </script>
22 </head>
23 <body>
24 <form action="#">
25 <div id="editor">
26 标题:
27 <input type="text" id="title" /><br />
28 内容:
29 <textarea cols="30" rows="5" id="content"></textarea><br />
30 <input type="button" value="提交" />
31 <input type="button" value="在新窗口中编辑" onclick="newWin()" />
32 </div>
33 </form>
34 </body>
35 </html>
第二个页面代码:
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
3 <head>
4 <title>新窗口</title>
5 <style type="text/css">
6 #editor
7 {
8 width:300px;
9 }
10 #title, #editor textarea
11 {
12 width:100%;
13 height:80%;
14 }
15 </style>
16 <script type="text/javascript">
17 function newWindow() {
18 //父窗口
19 var parent = window.opener;
20 if (!parent) {
21 return;
22 }
23 //从父窗口中获取标题和内容,填入子窗口的相应位置
24 $("title").value = parent.document.getElementById("title").value;
25 $("content").value = parent.document.getElementById("content").value;
26 }
27
28 function $(id) {
29 return document.getElementById(id);
30 }
31 </script>
32 </head>
33 <body onload="neWindow()">
34 <form action="#">
35 <div id="editor">
36 标题:
37 <input type="text" id="title" />
38 内容:
39 <textarea cols="30" rows="5" id="content"></textarea>
40 <input type="button" value="提交" />
41 <input type="button" value="在新窗口中编辑" onclick="neWin()" />
42 </div>
43 </form>
44 </body>
45 </html>
效果如下:
今天就写到这里,明天继续系统提示框、状态栏控制、定时操作的讲解。
作者:大龄码农老邓
出处:http://limits.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接
如有问题,可以通过 limitswpf#163.com 联系我,非常感谢。