js数据类型
基本数据类型: 字符串(string),数字(number),布尔(boolean),空(unll),未定义(undefined)
引用数据类型: 对象(object),数组(array),函数(function)字符串: 字符串是在声明完变量后面等于里的值是单引号或者双引号为字符串。
数字: 数字就是正常的12345或者是1.02 数字可以带小数点也可以不带。
布尔: 布尔就是两个值一个true 和一个 false。
空: 通过将变量的值设置为 null 来清空变量。
未定义: 值表示变量不含有值。
symbol: 新的数据类型表示是独一无二的。
对象: 可以说万物皆对象 简单的说对象就是一个属性和一个值。
数组: 数组的下标是0,所以以此类推,一般平常数数都是从一开始在编程中是从0开始。
函数: 函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。
DOM事件
常用事件
onclick:点击触发
onmouseover:经过触发
onmouseout:离开触发
onfocus:获取焦点
onblur:失去焦点
onmouseup:鼠标弹起
onmousedown:鼠标按下
onkeyup:某个键盘按键被松开时触发,弹起触发
onkeydown:某个键盘键被按下时触发
onkeypress:某个键盘按键被按下时并弹起时触发
事件对象
event对象代表事件得状态,比如键盘按键得状态,鼠标得位置,鼠标按钮得状态
简单理解:事件发生后,跟事件相关得一系列信息数据得集合都放在这个对象里面,这个对象就时事件对象event。
比如:谁绑定了这个事件
鼠标触发事件得话,会得到鼠标得相关信息,如鼠标位置。
键盘触发事件得话,会得到键盘得相关信息,如按了哪个键
事件对象得使用语法:
这个event是形参,系统帮我们设定为事件对象,不需要传递实参过去,当我们注册事件时,event对象就会被系统自动创建,并依次传递给事件监听器(事件处理函数)。
事件对象本身得获取存在兼容问题: 1.标准浏览器中时浏览器给方法传递的参数,只需要定义形参e就可以获取到 2.在IE6-8中,浏览器不会给方法传递参数,如果需要得话需要window.event中获取查找. 解决:e=e||window.event;
事件对象得常见属性和方法
e.target:返回触发事件得对象标准 e.srcElement:返回触发事件得对象。非标准,ie8以下版本。 e.type:返回事件得类型,比如click,mouseover,不带on。 e.preventDefault():该方法阻止默认事件(默认行为)标准,比如:不让链接跳转。 e.returnValue:该属性阻止默认(默认行为)非标准,ie6-8使用。 e.stopPropagation:阻止冒泡,标准. e.cancelBubble:阻止冒泡,非标准,ie6-8使用 e.cancelBubble=true
事件委托 也称事件代理
原理:不是每个子节点单独设置事件监听事件,而是事件监听器设置在其父节点上,然后利用冒泡原理影响设置每个子节点,案例:给ul注册点击事件,然后利用事件对象得target来找到当前点击得li因为点击li,事件会冒泡到ul上,ul有注册事件,就会触发事件监听器.