一、window对象

  window对象代表当前窗口,所有全局对象都是windows的属性,

  例如document是window的属性,window.document.writer("");

  可以将window看做最外层的对象,其他一些了对象都是windows的属性。

  window对象有很多属性,这些属性提供了对交互的支持(例如document、location...)

二、document对象

  document是平时使用较多的对象,代表当前HTML文档.

  window.document,前面的window可省略。

  document也是window对象的一个属性。

  每个载入浏览器的 HTML 文档都会成为 Document 对象。

  Document 对象使我们可以从脚本中对 HTML 页面中的所有元素进行访问。

  典型方法:document.getElementById(id);//返回指定id的HTML标签对象。

       document.getElementByName();//返回指定名称的HTML对象集合。

       document.write("");//向文档写入内容 

  document对象属性及方法可参阅:w3shcool document对象参考手册

<!DOCTYPE html>
<html>
<head> </head> <body >
<input name="box" type = "checkbox" value = "1">1</input>
<input name="box" type = "checkbox" value = "2">2</input>
<input name="box" type = "checkbox" value = "3">3</input>
<button onclick ="f()" >test</button>
<p id = "content"></p>
<script>
function f(){
var i = 0;
var boxs = document.getElementsByName("box");
var con = document.getElementById("content");
var info = "选择了";
for(var i = 0; i <boxs.length; i++){
if(boxs[i].checked == true){
info += boxs[i].value + ",";
}
}
con.innerHTML = info;
} </script>
</body>
</html>

  

document.write()在文档加载完毕后再次调用会覆盖原有HTML文档内容。

<!DOCTYPE html>
<html>
<head> </head> <body > <p id = "content">内容内容内容</p>
<button onclick = "f()">test</button>
<script>
function f(){
document.write("");
alert("清除内容");
} </script>
</body>
</html>

HTML文档加载完毕后,关闭了输出流。

在输出流关闭后,重写调用document.write写入会先调用open方法,而open会先将页面清除。

如果是在输入流未结束的过程中,调用document.write写入则不会发生覆盖的情况。

<!DOCTYPE html>
<html>
<head> </head> <body > <p id = "content">内容内容内容</p>
<script>
document.write("111");
alert("清除内容");
</script>
</body>
</html>

JavaScript代码执行时,文档尚未加载完毕,输出流没有关闭,

此时调用就不会重写打开输出流导致文档被覆盖。

不想被write覆盖可预先设置信息区块,后续通过innerHTM修改信息区块中内容,如第一个例子所示。

三、location对象

  location对象主要提供获取当前url地址,设置页面url跳转等功能。

  window.location前面的window可省略不写。 

<!DOCTYPE html>
<html>
<head> </head> <body >
<button onclick = "f()">修改url为https://cn.bing.com/</button>
<button onclick = "location.reload()">重新加载页面</button>
<script>
function f(){
location.href = "https://cn.bing.com/";//href代表完整的url路径
} </script>
</body>
</html>

  

location其他属性及方法可参阅:w3school location对象参考手册  

 

四、screen对象

  screen对象主要包含当前浏览器的屏幕信息,例如可用的高、框为多少。

  

<!DOCTYPE html>
<html>
<head> </head> <body > <script>
document.write("屏幕高度" + screen.height + "<br>");
document.write("返回显示屏幕的高度 (除 Windows 任务栏之外)" + screen.availHeight); </script>
</body>
</html>

  

    当前电脑分辨率为1366x768

screen其他属性及方法可参阅: w3school screen对象参考手册

五、history对象

  history代表浏览器的历史记录,可以进行回退等操作。

<!DOCTYPE html>
<html>
<head> </head> <body >
<button onclick = "history.back()">返回上一级</button>
<script>
document.write("共有" + history.length +"条历史记录")
</script>
</body>
</html>

  

六、消息框

  6.1警告框

  window.alert(content);//window可省略。  

  content可为对象或字符串或数字,各个类型之间用‘+’连接。

  支持转义字符,例如‘\n’代表换行。

  警告框需点击确认后方可继续。 

<!DOCTYPE html>
<html>
<head> </head> <body >
<script>
var i = 3;
window.alert("12" + '\n'+ i);//等价alert("12" + '\n' + i);
</script>
</body>
</html>

  

  

  6.2确认框

  确认框需等待用户点击确认或取消后方可继续。

  点击确认返回true,点击取消返回false。

  

<!DOCTYPE html>
<html>
<head> </head> <body >
<script>
var i = 3;
var flag = window.confirm("测试确认框");
if(flag){
document.write("选择了确认");
}else{
document.write("选择了取消");
}
</script>
</body>
</html>

  6.3 提示框

  提示框提供一个输入框,需点击确认或取消后方可继续。

  如果点击确认返回的值为输入内容,如果点击取消返回null.

  window.prompt("提示信息",默认值),默认值可不指定,不指定为空白。

  

<!DOCTYPE html>
<html>
<head> </head> <body >
<script>
var i = 3;
var info = window.prompt("测试确认框", i);//window可省略
if(info == null){
document.write("没有输入");
}else{
document.write("输入了:" + info);
}
</script>
</body>
</html>

  

七、JavaScript计时

 当需要在某一个固定时间后执行某一段代码或某个函数,可以采用JavaScript提供的计时函数。

 window.setTimeout("执行的代码或函数名",多长时间后执行(单位毫秒ms))  1000ms = 1s (秒)

    

<!DOCTYPE html>
<html>
<head>
<script> function redirect(){
//获取<p>标签中的值,并将其-1,如果为0则跳转页面
if((document.getElementById("p1").innerHTML-=1) == 0){
location.href = "http://www.baidu.com";
}
setTimeout("redirect()",1000);//每隔一秒调用redirect() window.setTimeout()等价
} </script>
</head> <body onload = "redirect()">
<p id = "p1">5</p>
</body>
</html>

上例中页面加载及执行redirect函数,先将<p>内部的值-1,并判断是否大于0,大于0继续定时函数。

定时函数调用redirect函数(也可以使用循环调用)。知道时间为0跳转页面。

设置了定时函数,有时需要将其取消,可以使用clearTimeout()函数即可。

var a = setTimeout(xxxx); clearTimeout(a);

设置定时函数会返回一个对象,将这个对象作为clearTimeout()函数的参数,当执行clearTimeout时

就会取消执行参数对象所代表的定时函数。

<!DOCTYPE html>
<html>
<head>
<script>
var to;
function redirect(){
//获取<p>标签中的值,并将其-1,如果为0则跳转页面
if((document.getElementById("p1").innerHTML-=1) == 0){
location.href = "http://www.baidu.com";
}
to = window.setTimeout("redirect()",1000);//每隔一秒调用redirect()
} function cancel(){
document.getElementById("p1").innerHTML += "停止成功";
window.clearTimeout(to);//停止执行
} </script> </head> <body onload = "redirect()">
<p id = "p1">5</p>
<button onclick ="cancel()">停止跳转</button>
</body>
</html>

 

参考资料:

w3shool JavaScript 

1.4(JavaScript学习笔记) window对象的属性及方法的更多相关文章

  1. JavaScript中的window对象的属性和方法;JavaScript中如何选取文档元素

    一.window对象的属性和方法 ①setTimeout()方法用来实现一个函数在指定毫秒之后运行,该方法返回一个值,这个值可以传递给clearTimeout()用于取消这个函数的执行. ②setIn ...

  2. Javascript学习笔记:对象的属性类型

    在ECMAScript中有两种属性:数据属性和访问器属性 1.数据属性 configurable:表示能否通过delete删除属性从而重新定义属性:或者能否修改属性的特性:或者能否把属性修改为访问器属 ...

  3. JavaScript:学习笔记(8)——对象扩展运算符

    JavaScript:学习笔记(8)——扩展运算符 对象的扩展运算符 扩展运算符是三个点(...).用于取出参数对象的所有可遍历属性,然后拷贝到当前对象之中. 如上图所示,新建了一个对象a,然后通过扩 ...

  4. javascript面向对象(给对象添加属性和方法的方式)

    1.在定义对象时,直接把属性和方法添加 <script type="text/JavaScript"> //给对象直接在定义时添加属性和方法         var g ...

  5. JavaScript学习笔记——BOM_window对象

    javascript浏览器对象模型-windwo对象 BOM Browser Object Model window对象 是BOM中所有对象的核心. 一.属性 1.(位置类型-获得浏览器的位置) IE ...

  6. JavaScript学习笔记-JSON对象

    JSON 是一种用来序列化对象.数组.数值.字符串.布尔值和 null 的语法.它基于 JavaScript 语法,但是又有区别:一些 JavaScript 值不是 JSON,而某些 JSON 不是 ...

  7. JavaScript学习笔记——3.对象

    JavaScript 对象 - 创建对象 1- var obj = new Object(); 2- var obj = {}; *例子:var person = {Name:"Hack&q ...

  8. JavaScript学习笔记之对象

    目录 1.自定义对象 2.Array 3.Boolean 4.Date 5.Math 6.Number 7.String 8.RegExp 9.Function 10.Event 在 JavaScri ...

  9. JavaScript学习笔记:数组reduce()和reduceRight()方法

    很多时候需要累加数组项的得到一个值(比如说求和).如果你碰到一个类似的问题,你想到的方法是什么呢?会不会和我一样,想到的就是使用for或while循环,对数组进行迭代,依次将他们的值加起来.比如: v ...

随机推荐

  1. favico.js笔记

    1. favicon.js是什么 一个js库可以使用徽标.图像.视频等来设置网页的favicon,即网页标题栏上的小图标. 2. 如何使用 2.1 使用徽标 basic demo: <!DOCT ...

  2. UML相关说明

    在java开发中,有很多时候我们是在不断的处理类与类之间关系,其中这六种关系是:依赖.关联.聚合.组合.继承.实现. 它们的强弱关系是没有异议的:依赖 < 关联 < 聚合 < 组合& ...

  3. 14 - 函数参数检测-inspect模块

    目录 1 python类型注解 2 函数定义的弊端 3 函数文档 4 函数注解 4.1 annotation属性 5 inspect模块 5.1 常用方法 5.2 signature类 5.3 par ...

  4. python requests模块手动设置cookies的几种方式

    def use_cookie(self): cookies="YF-V5-G0=731b77772529a1f49eac82a9d2c2957f; SUB=_2AkMsEgief8NxqwJ ...

  5. 设计模式之笔记--享元模式(Flyweight)

    享元模式(Flyweight) 定义 享元模式(Flyweight),运用共享技术有效地支持大量细粒度的对象. 类图 描述 Flyweight:抽象享元类,是所有的具体享元类的基类,为子类规定出需要实 ...

  6. Netty框架入门

    一.概述     Netty是由JBOSS提供的一个java开源框架.     Netty提供异步的.事件驱动的网络应用程序框架和工具,用以快速开发高性能.高可靠性的网络服务器和客户端程序.   二. ...

  7. Getting Started with Django Rest Framework and AngularJS

    转载自:http://blog.kevinastone.com/getting-started-with-django-rest-framework-and-angularjs.html A ReST ...

  8. 借助svn进行半自动多台服务器上线部署

    传统简单保留 如果web服务器就那么几台,大致可以在测试服务器上测试好以后,直接在正式的web服务器 压缩拷贝一个,然后再覆盖下,进行简单暴力的发布. 这种纯手工发布往往会带来几个问题 压缩一不小心把 ...

  9. ASP.NET WebAPI 02-Action的选择(一)

    在WebAPI对于Action的选择主要经过:Action方法名匹配,Http方法匹配,参数匹配三步. Http方法匹配 WebAPI提供了三种Http方法的选择方式,分别是:方法前缀,AcceptV ...

  10. css3实现立方体,并且自转效果

    先是HTML 一个父div包含四个绝对定位的div <div class='container container--realistic'> <div class='cube cub ...