DOM事件,js全局属性和方法

鼠标事件
onclick 当用户点击某个对象时调用的事件句柄。
oncontextmenu 在用户点击鼠标右键打开上下文菜单时触发
ondblclick 当用户双击某个对象时调用的事件句柄。
onmousedown 鼠标按钮被按下。
onmouseenter 当鼠标指针移动到元素上时触发。
onmouseleave 当鼠标指针移出元素时触发
onmousemove 鼠标被移动。
onmouseover 鼠标移到某元素之上。
onmouseout 鼠标从某元素移开。
onmouseup 鼠标按键被松开。

键盘事件
onkeydown 某个键盘按键被按下。
onkeypress 某个键盘按键被按下并松开。
onkeyup 某个键盘按键被松开。

框架/对象(Frame/Object)事件
onabort 图像的加载被中断。 ( )
onbeforeunload 该事件在即将离开页面(刷新或关闭)时触发
onerror 在加载文档或图像时发生错误。 ( , 和 )
onhashchange 该事件在当前 URL 的锚部分发生修改时触发。
onload 一张页面或一幅图像完成加载。
onpageshow 该事件在用户访问页面时触发
onpagehide 该事件在用户离开当前网页跳转到另外一个页面时触发
onresize 窗口或框架被重新调整大小。
onscroll 当文档被滚动时发生的事件。
onunload 用户退出页面。 ( 和 )

表单事件
onblur 元素失去焦点时触发
onchange 该事件在表单元素的内容改变时触发( , , , 和 )
onfocus 元素获取焦点时触发
onfocusin 元素即将获取焦点时触发
onfocusout 元素即将失去焦点时触发
oninput 元素获取用户输入时触发
onreset 表单重置时触发
onsearch 用户向搜索域输入文本时触发 ( <input=“search”>)
onselect 用户选取文本时触发 ( 和 )
onsubmit 表单提交时触发

剪贴板事件
oncopy 该事件在用户拷贝元素内容时触发
oncut 该事件在用户剪切元素内容时触发
onpaste 该事件在用户粘贴元素内容时触发

打印事件
onafterprint 该事件在页面已经开始打印,或者打印窗口已经关闭时触发
onbeforeprint 该事件在页面即将开始打印时触发

拖动事件
ondrag 该事件在元素正在拖动时触发
ondragend 该事件在用户完成元素的拖动时触发
ondragenter 该事件在拖动的元素进入放置目标时触发
ondragleave 该事件在拖动元素离开放置目标时触发
ondragover 该事件在拖动元素在放置目标上时触发
ondragstart 该事件在用户开始拖动元素时触发
ondrop 该事件在拖动元素放置在目标区域时触发

多媒体(Media)事件
onabort 事件在视频/音频(audio/video)终止加载时触发。
oncanplay 事件在用户可以开始播放视频/音频(audio/video)时触发。
oncanplaythrough 事件在视频/音频(audio/video)可以正常播放且无需停顿和缓冲时触发。
ondurationchange 事件在视频/音频(audio/video)的时长发生变化时触发。
onemptied 当期播放列表为空时触发
onended 事件在视频/音频(audio/video)播放结束时触发。
onerror 事件在视频/音频(audio/video)数据加载期间发生错误时触发。
onloadeddata 事件在浏览器加载视频/音频(audio/video)当前帧时触发触发。
onloadedmetadata 事件在指定视频/音频(audio/video)的元数据加载后触发。
onloadstart 事件在浏览器开始寻找指定视频/音频(audio/video)触发。
onpause 事件在视频/音频(audio/video)暂停时触发。
onplay 事件在视频/音频(audio/video)开始播放时触发。
onplaying 事件在视频/音频(audio/video)暂停或者在缓冲后准备重新开始播放时触发。
onprogress 事件在浏览器下载指定的视频/音频(audio/video)时触发。
onratechange 事件在视频/音频(audio/video)的播放速度发送改变时触发。
onseeked 事件在用户重新定位视频/音频(audio/video)的播放位置后触发。
onseeking 事件在用户开始重新定位视频/音频(audio/video)时触发。
onstalled 事件在浏览器获取媒体数据,但媒体数据不可用时触发。
onsuspend 事件在浏览器读取媒体数据中止时触发。
ontimeupdate 事件在当前的播放位置发送改变时触发。
onvolumechange 事件在音量发生改变时触发。
onwaiting 事件在视频由于要播放下一帧而需要缓冲时触发。

动画事件
animationend 该事件在 CSS 动画结束播放时触发
animationiteration 该事件在 CSS 动画重复播放时触发
animationstart 该事件在 CSS 动画开始播放时触发

过渡事件
transitionend 该事件在 CSS 完成过渡后触发。

其他事件
onmessage 该事件通过或者从对象(WebSocket, Web Worker, Event Source 或者子 frame 或父窗口)接收到消息时触发
onmousewheel 已废弃。 使用 onwheel 事件替代
ononline 该事件在浏览器开始在线工作时触发。
onoffline 该事件在浏览器开始离线工作时触发。
onpopstate 该事件在窗口的浏览历史(history 对象)发生改变时触发。
onshow 该事件当

元素在上下文菜单显示时触发
onstorage 该事件在 Web Storage(HTML 5 Web 存储)更新时触发
ontoggle 该事件在用户打开或关闭 元素时触发
onwheel 该事件在鼠标滚轮在元素上下滚动时触发

全局属性

Infinity

代表正的无穷大的数值
Infinity 属性用于存放表示正无穷大的数值。
负无穷大是表示负无穷大一个数字值。
在Javascript中,超出 1.7976931348623157E+103088 的数值即为Infinity,小于 -1.7976931348623157E+103088 的数值为无穷小。
实例:

var x=1.7976931348623157E+10308;
document.write(x + "<br>");//Infinity
var y=-1.7976931348623157E+10308;
document.write(y);//-Infinity

NaN

指示某个值是不是数字值。
NaN 即非数值(Not a Number),NaN 属性用于引用特殊的非数字值,该属性指定的并不是不合法的数字。
NaN 属性 与 Number.Nan 属性相同。
提示: 请使用 isNaN() 来判断一个值是否是数字。原因是 NaN 与所有值都不相等,包括它自己。

undefined

指示未定义的值,undefined 属性用于存放 JavaScript 中未定义的值。

全局函数

decodeURI()

解码某个编码的 URI。decodeURI() 函数可对 encodeURI() 函数编码过的 URI 进行解码。
语法:
decodeURI(uri)
参数说明:
uri 必需。一个字符串,含有要解码的 URI 或其他要解码的文本。
实例:

var uri="my test.asp?name=ståle&car=saab";
document.write(encodeURI(uri)+ "<br>");
document.write(decodeURI(uri));
//my%20test.php?name=st%C3%A5le&car=saab
//my test.asp?name=ståle&car=saab

decodeURIComponent()

解码一个编码的 URI 组件。
decodeURIComponent() 函数可对 encodeURIComponent() 函数编码的 URI 进行解码。
提示:使用 encodeURIComponent() 方法可以对 URI 进行编码。
语法:
decodeURIComponent(uri)
参数说明:
uri 必需。一个字符串,含有编码 URI 组件或其他要解码的文本。
实例:

var uri="http://w3cschool.cc/my test.php?name=ståle&car=saab";
var uri_encode=encodeURIComponent(uri);
document.write(uri_encode);
document.write("<br>");
document.write(decodeURIComponent(uri_encode));
//http%3A%2F%2Fw3school.cc%2Fmy%20test.php%3Fname%3Dst%C3%A5le%26car%3Dsaab
//http://w3schools.com/my test.asp?name=ståle&car=saab

encodeURI()

把字符串编码为 URI。
encodeURI() 函数可把字符串作为 URI 进行编码。
对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() 函数是不会进行转义的: , / ? : @ & = + $ # (可以使用 encodeURIComponent() 方法分别对特殊含义的 ASCII 标点符号进行编码。).
提示:使用 decodeURI() 方法可以解码URI(通用资源标识符:UniformResourceIdentifier,简称"URI")。
语法:
encodeURI(uri)
参数说明:
uri 必需。一个字符串,含有 URI 或其他要编码的文本。
实例:

var uri="my test.php?name=ståle&car=saab";
document.write(encodeURI(uri)+ "<br>");
//my%20test.php?name=st%C3%A5le&car=saab

encodeURIComponent()

把字符串编码为 URI 组件。
encodeURIComponent() 函数可把字符串作为 URI 组件进行编码。
该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ’ ( ) 。
其他字符(比如 :;/??&=+$,# 这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的。
语法:
encodeURIComponent(uri)
参数说明:
uri 必需。一个字符串,含有 URI 组件或其他要编码的文本。
实例:

var uri="http://w3cschool.cc/my test.php?name=ståle&car=saab";
document.write(encodeURIComponent(uri));
//http%3A%2F%2Fw3cschool.cc%2Fmy%20test.php%3Fname%3Dst%C3%A5le%26car%3Dsaab

escape()

对字符串进行编码。
escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。

该方法不会对 ASCII 字母和数字进行编码,也不会对下面这些 ASCII 标点符号进行编码: * @ - _ + . / 。其他所有的字符都会被转义序列替换。

提示: 使用 unescape() 方法对字符串进行解码。
语法:
escape(string)
参数说明:
string 必需。要被转义或编码的字符串。
实例:

document.write(escape("Need tips? Visit RUNOOB!"));
//Need%20tips%3F%20Visit%RUNOOB%21

unescape()

对由 escape() 编码的字符串进行解码。
unescape() 函数可对通过 escape() 编码的字符串进行解码。
提示: 使用函数escape() 对字符串进行编码。
语法
unescape(string)
参数说明:
string 必需。要解码的字符串。
实例:

var str="Need tips? Visit RUNOOB!";
var str_esc=escape(str);
document.write(str_esc + "<br>")
document.write(unescape(str_esc))

eval()

计算 JavaScript 字符串,并把它作为脚本代码来执行。
eval() 函数计算 JavaScript 字符串,并把它作为脚本代码来执行。
如果参数是一个表达式,eval() 函数将执行表达式。如果参数是Javascript语句,eval()将执行 Javascript 语句。
语法:
eval(string)
参数说明:
string 必需。要计算的字符串,其中含有要计算的 JavaScript 表达式或要执行的语句。
实例:

eval("x=10;y=20;document.write(x*y)");//200
document.write("<br>" + eval("2+2"));//4
document.write("<br>" + eval(x+17));//27

isFinite()

检查某个值是否为有穷大的数。
定义和用法
isFinite() 函数用于检查其参数是否是无穷大。

提示: 如果 number 是 NaN(非数字),或者是正、负无穷大的数,则返回 false。
语法
isFinite(value)
参数说明:
value 必需。要检测的数字。
实例:

document.write(isFinite(123)+ "<br>");
document.write(isFinite(-1.23)+ "<br>");
document.write(isFinite(5-2)+ "<br>");
document.write(isFinite(0)+ "<br>");
document.write(isFinite("Hello")+ "<br>");
document.write(isFinite("2005/12/12")+ "<br>");

isNaN()

检查某个值是否是数字。
定义和用法
isNaN() 函数用于检查其参数是否是非数字值。
如果参数值为 NaN 或字符串、对象、undefined等非数字值则返回 true, 否则返回 false。
语法:
isNaN(value)
参数说明:
value 必需。要检测的值。
实例:

document.write(isNaN(123)+ "<br>");
document.write(isNaN(-1.23)+ "<br>");
document.write(isNaN(5-2)+ "<br>");
document.write(isNaN(0)+ "<br>");
document.write(isNaN("Hello")+ "<br>");
document.write(isNaN("2005/12/12")+ "<br>");

Number()

把对象的值转换为数字。
把对象的值转换为数字。
如果对象的值无法转换为数字,那么 Number() 函数返回 NaN。
语法:
Number(object)
参数说明:
object 可选。一个 JavaScript 对象。如果没有提供参数,则返回0。
提示和注释
注意:如果参数是 Date 对象,Number() 返回从 1970 年 1 月 1 日至今的毫秒数。

var test1= new Boolean(true);
var test2= new Boolean(false);
var test3= new Date();
var test4= new String("999");
var test5= new String("999 888");

document.write(Number(test1)+ "<br>");//1
document.write(Number(test2)+ "<br>");//0
document.write(Number(test3)+ "<br>");//1551405167251
document.write(Number(test4)+ "<br>");//999
document.write(Number(test5)+ "<br>");//NaN

parseFloat()

解析一个字符串并返回一个浮点数。
可解析一个字符串,并返回一个浮点数。
该函数指定字符串中的首个字符是否是数字。如果是,则对字符串进行解析,直到到达数字的末端为止,然后以数字返回该数字,而不是作为字符串。
语法:
parseFloat(string)
参数说明:
string 必需。要被解析的字符串。

提示和注释
注意: 字符串中只返回第一个数字。
注意: 开头和结尾的空格是允许的。
注意: 如果字符串的第一个字符不能被转换为数字,那么 parseFloat() 会返回 NaN。
实例:

document.write(parseFloat("10") + "<br>");//10
document.write(parseFloat("10.33") + "<br>");//10.33
document.write(parseFloat("34 45 66") + "<br>");//34
document.write(parseFloat(" 60 ") + "<br>");//60
document.write(parseFloat("40 years") + "<br>");//40
document.write(parseFloat("He was 40") + "<br>");//NaN

parseInt()

解析一个字符串并返回一个整数。
parseInt() 函数可解析一个字符串,并返回一个整数。
当参数 radix 的值为 0,或没有设置该参数时,parseInt() 会根据 string 来判断数字的基数。
当忽略参数 radix , JavaScript 默认数字的基数如下:
如果 string 以 “0x” 开头,parseInt() 会把 string 的其余部分解析为十六进制的整数。
如果 string 以 0 开头,那么 ECMAScript v3 允许 parseInt() 的一个实现把其后的字符解析为八进制或十六进制的数字。
如果 string 以 1 ~ 9 的数字开头,parseInt() 将把它解析为十进制的整数。
语法:
parseInt(string, radix)
参数说明:
string 必需。要被解析的字符串。
radix 可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间。
提示:
注意: 只有字符串中的第一个数字会被返回。
注意: 开头和结尾的空格是允许的。
注意:如果字符串的第一个字符不能被转换为数字,那么 parseInt() 会返回 NaN。
注意:在字符串以"0"为开始时旧的浏览器默认使用八进制基数。ECMAScript 5,默认的是十进制的基数

实例:

document.write(parseInt("10") + "<br>");//10
document.write(parseInt("10.33") + "<br>");//10
document.write(parseInt("34 45 66") + "<br>");//34
document.write(parseInt(" 60 ") + "<br>");//60
document.write(parseInt("40 years") + "<br>");//40
document.write(parseInt("He was 40") + "<br>");//NaN
 
document.write(parseInt("10",10)+ "<br>");//10
document.write(parseInt("010")+ "<br>");//10
document.write(parseInt("10",8)+ "<br>");//8
document.write(parseInt("0x10")+ "<br>");//16
document.write(parseInt("10",16)+ "<br>");//16

String()

把对象的值转换为字符串。
语法:
String(object)
参数说明:
object 必需。JavaScript 对象。
提示和注释
注意: String() 函数返回与字符串对象的toString()方法值一样。

var test1 = new Boolean(1);
var test2 = new Boolean(0);
var test3 = new Boolean(true);
var test4 = new Boolean(false);
var test5 = new Date();
var test6 = new String("999 888");
var test7 = 12345;

document.write(String(test1)+ "<br>");//true
document.write(String(test2)+ "<br>");//false
document.write(String(test3)+ "<br>");//true
document.write(String(test4)+ "<br>");//false
document.write(String(test5)+ "<br>");//Fri Mar 01 2019 10:07:51 GMT+0800 (中国标准时间)
document.write(String(test6)+ "<br>");//999 888
document.write(String(test7)+ "<br>");//12345
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值