[js]跨浏览器浏览器兼容性
在前端开发工作中,由于浏览器兼容性等问题,触发事件对象的方法不同,分为IE和非IE两种。下面主要介绍跨浏览器触发 目标事件、阻止事件的默认行为、阻止事件冒泡 三种方法:
在前端开发工作中,由于浏览器兼容性等问题,触发事件对象的方法不同,分为IE和非IE两种。下面主要介绍跨浏览器触发 目标事件、阻止事件的默认行为、阻止事件冒泡 三种方法:
- var EventUtil = {
- target : function(e){ //目标事件
- ee = e || window.event;
- return e.target || e.srcElement;
- },
- preventDefault : function(e){ //阻止事件的默认行为
- ee = e || window.event;
- if(e.preventDefault){
- e.preventDefault();
- }else{
- e.returnValue = false;
- }
- },
- stopPropagation : function(e){ //阻止事件冒泡
- ee = e || window.event;
- if(e.stopPropagation){
- e.stopPropagation();
- }else{
- e.cancelBubble = true;
- }
- },
- charCode : function(e){ //取得字符编码
- ee = e || window.event;
- return e.keyCode || e.charCode;
- }
- };
- var div=document.getElementById('div');
- div.onclick = function(e){
- var target = EventUtil.target(e);
- alert(target.tagName);
- }
- document.onkeydown=function(e){
- var code=EventUtil.charCode(e);
- console.log(code); //按键盘上的键 看效果
- }
热门文章推荐
- [JS]window.location获取url各项参数详解
- [JS]jQuery,javascript获得网页的高度和宽度
- [JS]视频弹窗视频弹出层videoLightBox(含三种播放器的用法)
- [JS]JS提交中文encodeURI两次转码
- [JS]js版方面encodeURI转码和decodeURI解码的用法实例
- [JS]js取当前机子的时间戳实例
- [JS]AES加密(基于crypto-js)PHP后端解密
- [JS]data:image/png;base64写法的用途及说明
请稍候...