window 对象常见的事件
1.页面加载事件
方式1:window.onload = function(){ }
window.addEventListener('load',function(){ })
window.onload 是窗口(页面)加载事件,当文档内容完全加载成功,就会触发该事件(包括图像,脚本文件,CSS文件等),就调用的处理函数。
注意:
1.有了 window.pnload 就可以把JS代码写到页面元素的上方,因为 onload 是等页面内容全部加载完毕,再去执行处理函数。
2.window .onload 传统注册事件方式只能写一次,如果有多个,会议最后一个 window.onload 为准。
3.如果使用 addEventListener 则没有限制
方式2:document.addEventListener('DOMContentLoaded',function(){ })
DOMContentLoaded 事件触发时,仅当 DOM 加载完成,不包括样式表,图片,flash等等。IE9以上才支持
注意:
如果页面的图片很多的话,从用户访问到 onload 触发可能需要较长的时间,交互效果就不能实现,必然影响用户体验,此时用DOMContentLoaded 时间比较合适。
2.调整窗口大小事件
window.onresize = function(){ }
window.addEventLisener('load',function(){});
window.onload 是调整窗口大小加载事件,当触发时就调用是处理函数
注意:
1.只要窗口大小发生像素变化就会触发这个事件
2.经常利用这个事件完成响应式布局,window.innerWidth 当前屏幕宽度。innerHeight 当前屏幕高度
3.定时器(两种方式)
1.setTimeout( ) (方式一)
语法规范:window.setTimeout(调用函数,延时时间); // 这里的调用函数,也称作是回调函数 callback
1.这个 window 在调用时可以省略
2.这个延时时间单位是毫秒,可以省略不写,如果省略默认是0,立即执行
3.这个调用函数可以直接写函数(callback),还可以写函数名(‘callback( )’)
4.页面中可能有很多的定时器,我们经常给定时器加标识符(名字)区分
案例:(三种写法)
方式1:
setTimeout(function(
console.log('时间到了');
){},3000)
方式2:
function callback(){
console.log('时间到');
}
var timer1 = setTimeout(callback,3000);
方式3:
var timer2 = setTimeout('callback()',5000); //不推荐使用
2.setInterval( )(方式二)
window.setInterval(回调函数,[ 间隔的毫秒 ]);
setInterval( ) 方法重复调用一个函数,每隔这个时间,就去调用一次回调函数
3.setTimeout 和 setInterval 的区别:
3.1 setTimeout 延时时间到了,就去调用这个回调函数,只调用一次就结束这个定时器
3.2 setInterout 每隔这个延时时间,就去调用这个回调函数,会调用很多次,重复调用这个函数
2.清除定时器(两种方式)
1.clearTimeout(方式一)
window.clearTimeout( timeoutID ); // window 也可以省略
里面的参数就是定时器的标识符
clearTimeout( ) 方法取消了之前通过调用 setTimeout( ) 建立的定时器
案例:
var timer = setTimeout(function(){
console.log('弹出来了');
},2000);
btn.addEventListener('click',function(){
clearTimeout( timer );
})
2.clearInterval( )(方式二)
window 对象常见的事件的更多相关文章
- 第二章 函数和window对象
1.什么是函数函数相当于Java中的方法,每一个函数可以做一件事情,但是不属于某一个类 2.使用函数的好处:使代码模块化,功能分工明确,方便调用,思路功能清晰 3.函数的分类:(1)系统函数:系统提前 ...
- JavaScript函数和window对象
一.什么是函数 函数的含义:类似于Java中的方法,是完成特定任务的代码语句块 使用更简单:不用定义属于某个类,直接使用 二.常用系统函数 parseInt ("字符串") ...
- JavaScript---网络编程(6)-Dom和Bom模型概念讲解(节点获取,window对象)
本节讲Dom和Bom模型概念讲解(节点获取,window对象). out.js: 写了2个输出到页面的函数. function println(param){ document.write(param ...
- window对象的几个重要方法
<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Java ...
- 让$(window).scroll()监听事件只执行一次
可以用jQuery中的unbind()来进行事件解绑. $(window).scroll(function() { console.log("滚离顶部" + $(document) ...
- window对象的属性及事件。
不同的运行环境有不同的“顶层对象”,而在浏览器的环境中,顶层对象就是window对象.window就是指当前的浏览器窗口. 例:var a = 1: window.a; //1 1.window对象的 ...
- window对象中的常见方法
<body><!-- window对象中的常见方法--><script type="text/javascript"> var timeid; ...
- JavaScript DOM编程基础精华02(window对象的属性,事件中的this,动态创建DOM,innerText和innerHTML)
window对象的属性1 window.location对象: window.location.href=‘’;//重新导航到新页面,可以取值,也可以赋值. window.location.reloa ...
- JavaScript DOM编程基础精华01(DOM入门,DOM模型和获取页面元素,事件,window对象的方法)
DOM入门 DOM就是Html页面的模型,将每个标签都做为一个对象,JavaScript通过调用DOM中的属性.方法就可以对网页中的文本框.层等元素进行编程控制.比如通过操作文本框的DOM对象,就可以 ...
随机推荐
- Java中创建String的两道面试题及详解
我们知道创建一个String类型的变量一般有以下两种方法: String str1 = "abcd"; String str2 = new String("abcd&qu ...
- Linux下svn更新含有中文名称的库无法更新问题
Linux下更新含有中文名称的库文件时,出现如下提示: SVN Error: Can't convert string from native encoding to 'UTF-8' 通过google ...
- 【外】001-python3之zip函数
zip函数语法格式zip(可迭代对象1, 可迭代对象2, ... ,可迭代对象n) 函数接收任意个可迭代对象作为参数, 将所有对象中对应位置上的元素分别打包在一起组成一个tuple, 并将所有的tup ...
- 使用Hystrix实现断路器处理
在之前的架构的基础上我们会发现,一旦级别低的服务宕了,会导致调用它的服务也挂掉,这样容易产生级联效应(雪崩效应),为了防止这种情况的出现,我引入了Hystrix来处理,先介绍ribbon使用Hystr ...
- bootstrap 好看的上传组件
<!DOCTYPE html> <html> <head> <title></title> <link rel="style ...
- 利用SparkSQL(java版)将离线数据或实时流数据写入hive的用法及坑点
1. 通常利用SparkSQL将离线或实时流数据的SparkRDD数据写入Hive,一般有两种方法.第一种是利用org.apache.spark.sql.types.StructType和org.ap ...
- 【Redis】分布式锁RedLock
普通实现 说道Redis分布式锁大部分人都会想到: 1.setnx+lua, 2.setkey value px milliseconds nx. - 获取锁(unique_value可以是UUID等 ...
- 思维——cf1238C
听思维的一道题,网上大多直接模拟,感觉有点麻烦,其实只要把连续段求出来,然后处理一下统计答案就行 两个注意点:1.除了第一个连续段,其余段长度都要+1 2.因为目的地是0,所以最后一段要特判一下 #i ...
- spark面试问题收集
spark面试问题 1.spark中的RDD是什么,有哪些特性 RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象,它代表一个不可 ...
- iphone5越狱后问题的解决办法
1,添加各种源失败,显示红字. 解决办法: 如果出现bad 404等红字,一般是由于网络问题,服务器挤爆了,导致不能添加,这种情况大家可以换一个时间段添加源,或者使用网速快一点的网络,比如3g,多试几 ...