- IE&w3c事件兼容
- 事件兼容写法
- function addEvent(obj,type,fn){if(){}else{}} 自己创建兼容事件
- try{}catch(err){} 如果try中报错则运行catch中的代码 catch括号中的err 是try中的报错信息
- try{}finally{} 不管try报不报错finally都会执行
- try{}catch(err){}finally{}可以组合使用
- 在IE8版本及一下版本无法通过传参方式吧event事件对象传过去 使用try...catch(ev)可以将event事件对象直接传参
- 兼容ie8可以识别的写法 var e = ev || window.event;
- 得到事件目标的兼容性写法
- 阻止事件默认行为
- 事件对象.preventDefault() 阻止默认行为 ie8及一下版本不支持
- event.returnValue = false ie8 及一下版本使用
- html5新增的拖放事件
- draggable = true 等于true表示可以拖动 行内样式
- ondragstart 当拖动对象的时候触发事件
- ondragover 当鼠标拖动的对象进入其容器范围内是触发此事件
- ondrop 当鼠标松开的时候触发该事件
- ondragenter 当拖拽到目标范围内的时候触发事件
- ondragleave 当离开的时候触发该事件
- ev.dataTransfer.setData("text",ev.target.元素id) 当触发事件的时候 保存触发事件的id值
- 滚轮事件
- onmousewheel 当鼠标滚轮滚动的时候触发该事件 火狐不兼容此写法
- onDOMMouseScroll 当鼠标滚轮滚动的时候触发该事件 火狐可以识别写法
- ev.wheelEvent 获取滚轮的所有属性 事件对象 非火狐
- ev.wheelDelta 获取轮子滚动的值 如果值大于0则是往上滚动 小于0则是往下滚动 非火狐
- DOMMouseScroll 获取火狐滚轮的所有属性 火狐的事件对象
- ev.detail 滚轮混动的数值 负值往上是往上滚动 火狐
- 阻止事件冒泡的默认行为
- w3c的方法是 ev.stopPropagation()
- IE的方法是 ev.cancelBubble = true
- 上下文菜单事件 contextmenu
- oncontextmenu 点击鼠标右键时候触发该事件
- beforeunload 卸载前事件 关闭浏览器的时候触发该事件
- 手机事件
- touchstart 触摸开始的时候触发该事件
- touchmove 手指在屏幕上滑动的时候触发
- touchend 触摸结束的时候触发该事件、
- 事件属性
- touches 当前位于屏幕上的所有手指列表
- targetTouches 位于当前DOM元素上手指的列表
- changedTouches 设计当前事件手指的列表
- clientX /clientY 位于浏览器所处位置 / 坐标
- ev.targetTouches[0] 得到第一根手指在屏幕上的相关信息
- ev.targetTouches[0].target 获取第一根手指对象事件作用的目标
- 事件兼容写法