一、写在前面

本人前端菜鸟一枚,学习前端不久,学习过程中有很多概念、定义在使用时容易混淆,在此给向我一样刚踏入前端之门的童鞋们归纳一下。今天给大家分享一下js中window与document对象、setInterval与setTimeout定时器的用法与区别。讲得不对的地方,烦请大家指正,还望前辈、大牛多多指教!

二、window对象与document对象的用法和区别

window是全局对象,document是window对象的一个属性它也是一个对象。如图:

document对象指的页面这个文档对象,window是全局的,window对象是BOM的核心对象,你在浏览器里执行的所有js都是在这个对象的作用域下。

1、window对象的属性、方法、事件

window对象的属性、方法、事件和使用方法,详见这里

2、document对象常用的属性、方法、事件

(1)属性:

document.title //设置文档标题title标签

document.URL //设置URL在同一窗口打开另一网页

document.cookie //设置和读出cookie

document.charset //设置字符集

(2)常用方法

document.write() //向页面写入内容

document.createElement(tag) //创建html标签对象

document.getElementById(id) //获得指定id值的对象

document.getElementsByName(name) //获得指定name值的对象

document.body.appendChild(element)//向body插入元素节点,作为最后一个子元素

document.getElementsByTagName(tag)//获取指定的元素节点

(3)常用对象事件

document.body.onclick= func() //鼠标指针单击对象是触发

document.body.onmouseover = func()  //鼠标指针移到对象时触发

document.body.onmouseout = func() //鼠标指针移出对象时触发

三、setInterval与setTimeout定时器的用法和区别

setInterval()是每隔指定时间就执行代码一次即间歇调用,setTimeout()是在指定时间内执行一次(只执行一次),如下代码分析:

<!doctype html>
<html lang="en">
<head>
<title></title>
<meta charset="utf-8">
</head>
<script type="text/javascript">
window.onload = function(){
var oBtn1 = document.getElementById('button1');
var oBtn2 = document.getElementById('button2');
oBtn1.onclick = function(){
setInterval(function(){
alert('重复执行');
}, 1000);
};
oBtn2.onclick = function(){
setTimeout(function(){
alert('只执行一次');
}, 1000);
};
};
</script>
<body>
<input id="button1" type="button" value="重复执行" />
<input id="button2" type="button" value="只执行一次" />
</body>
</html>

如上代码对“重复执行”按钮添加了一个鼠标点击事件,点击事件的函数内定义了一个setInterval()定时器,当点击“重复执行”按钮时(之后不再点击)每个一秒弹出“重复执行”的提示框;对“只执行一次”按钮也添加了一个鼠标点击事件,点击事件的函数内定义了一个setTimeout()定时器,当点击“只执行一次”按钮时,一秒后只弹出一次“只执行一次”提示框,只有当再次点击时才会弹出。

四、总结

这两组概念在平时的学习中还是比较常见的,知道他们各自的用法,使用时才更得心应手。本人是新手,如果文中有错误的地方,欢迎指正!到点了,休息好,才能学习好,各位晚安!

此文章发布在本人博客园changjianqiu,如需转载本文,请注明来源: http://www.cnblogs.com/changjianqiu/

javascript中window与document对象、setInterval与setTimeout定时器的用法与区别的更多相关文章

  1. Javascript中的定时调用函数setInterval()和setTimeout()

    首先介绍这两个函数 一.setInterval() 按照指定的周期来调用函数或表达式,执行多次.(时间单位:ms) timer = setInterval("content =documen ...

  2. javascript中window,document,body的解释

    解释javascript中window,document,body的区别: window对象表示浏览器中打开的窗口,即是一个浏览器窗口只有一个window对象. document对象是载入浏览器的ht ...

  3. javascript中遇到的字符串对象处理

    在javascript中对参数处理: 1 <script> 2 function getParam() 3 { 4 urlInfo=window.location.href; //获取当前 ...

  4. javascript中的内置对象

    2015.12.1 javascript中的内置对象 复习: 1.js中的内置函数 alert prompt write parseInt parseFloat eval isNaN document ...

  5. javaScript中Math内置对象基本方法入门

    概念 Math 是javaScript的内置对象,包含了部分数学常数属性和数学函数方法. Math 不是一个函数对象,用户Number类型进行使用,不支持BigInt. Math 的所有属性与方法都是 ...

  6. JavaScript中 window.parent 、window.top、window.self代表的含义

    在应用有frameset或者iframe的页面时,parent是父窗口,top是最顶级父窗口(有的窗口中套了好几层frameset或者iframe),self是当前窗口, opener是用open方法 ...

  7. JavaScript中常谈的对象

    为浏览器编写代码时,总少不了window对象 window对象表示JavaScript程序的全局环境 同时 也表示应用的主窗口 到处都是对象 window对象 常用的属性和方法介绍 location ...

  8. 客户端JavaScript(window、document、element)

    一.window对象是所有客户端JavaScript特性和API的主要接入点,用window来引用它. 属性:location属性(引用Location对象,当前显示在窗口的URL).document ...

  9. JavaScript中常用的Document了解

    在我们使用js的时候经常会用到document 例如: document.write(""); document.getElementById(''); document.crea ...

随机推荐

  1. [BZOJ2655]calc(拉格朗日插值法+DP)

    2655: calc Time Limit: 30 Sec  Memory Limit: 512 MBSubmit: 428  Solved: 246[Submit][Status][Discuss] ...

  2. [LA 3942] Remember the Word

    Link: LA 3942 传送门 Solution: 感觉自己字符串不太行啊,要加练一些蓝书上的水题了…… $Trie$+$dp$ 转移方程:$dp[i]=sum\{ dp[i+len(x)+1]\ ...

  3. []End of 2017OI

    今年大概到此为止了,现在这个算是做一个简短的阶段性总结吧 今年打的第一场大概是省赛,当时整个人处于(迷茫,不知道选物理还是选信息+备战中考+持续摸鱼OI颓废)的状态,KMP都不会导致签到题都没有分,然 ...

  4. [CF98E]Help Shrek and Donkey

    题意:A和B两个卡牌大师玩游戏,A有$n$张牌,B有$m$张牌,桌上有$1$张牌,这$n+m+1$张牌互不相同且A和B都知道这些牌里有什么牌(但他们互相不知道对方有什么牌,两个人也都不知道桌上的那张牌 ...

  5. react-native热更新从零到成功中的各种坑

    https://github.com/reactnativecn/react-native-pushy/blob/master/docs/guide.md Android NDK暂时没有安装 在你的项 ...

  6. java web定时任务---quartz

    写在前面: 前面有简单的记录下Timer定时的用法,但是在此次项目中,选择的是quartz来完成定时操作任务的.两者都可以完成定时操作,但是spring可以整合quartz,并且配置起来也比较简便,还 ...

  7. Bootstrap-table使用footerFormatter做统计列

    写在前面: 在做表格的时候,难免会碰到做统计的时候.由于在项目中涉及到做统计的功能比较简单,之后也就没有过多的去研究更复杂的,这里简单记录下. 这次就直接先上图:一个简单的例子 看到效果图还是很好的, ...

  8. javolution-core-java-6.1.0.jar 的使用

    官方网址:http://javolution.org/apidocs/javolution/io/Struct.html 第一步:导包 第二步:创建继承的结构体 结构体定义如下所示: public c ...

  9. CASJAVA一些理解

    如果不用锁机制如何实现共享数据访问.(不要用锁,不要 用sychronized  块或者方法,也不要直接使用 jdk  提供的线程安全的数据结构,需要自己实现一个类来保证多个线程同时读写这个类中的共享 ...

  10. RabbitMq_05_Topics

    Topics (using the .NET client) Prerequisites This tutorial assumes RabbitMQ isinstalled and running ...