js事件中的event对象

addEvent(oDiv,"click",function(event){

                console.log(event.bubbles+"事件是否冒泡");

                console.log(event.cancelable +"是否可以取消默认行为")

                console.log(event.defaultPrevented+"DOM3新增,是否已经调用了preventDefault()");

                console.log(event.target);//+"当前发生事件的对象"@ IE中为 event.srcElement

                console.log(event.currentTarget)//+"绑定的事件对象"

                console.log(event.detail)//与事件相关的细节信息(不知道有什么用。。)

                console.log(event.type);//发生了什么事件

                console.log(event.eventPhase);//用于判断事件是否是冒泡进来的:返回1:表示捕获阶段;2表示处于目标;3表示冒泡进来的

                event.preventDefault();//阻止默认事件@ IE8及以下 中函 直接在函数中return false

                event.stopPropagation();//阻止冒泡@ IE8及以下 中 event.cancelBubble=true;



                console.log(eventFn.getTarget(event));



            });



            function addEvent(obj,ev,fn){



                if(obj.attachEvent)

                {

                    obj.attachEvent("on"+ev,fn);

                }

                else

                {

                    obj.addEventListener(ev,fn,false);

                }



            }
event.srcElement是IE下的属性
event.target是Firefox下的属性
Chrome浏览器同时有这两个属性


-------------------------------------------------------
兼容的event对象 冒泡 阻止默认事件。。

用法
eventFn.getTarget(event)

var eventFn = {



                getEvent:function(event){

                    return event?event:window.event;

                },

                getTarget:function(event){

                    return event.target||event.srcElement;

                },

                preventDefault:function(event){

                    //阻止默认事件

                    if(event.preventDefault())

                    {



                        event.preventDefault();

                    }

                    else

                    {

                        event.returnValue = false;

                    }



                },

                stopPropagation:function(event){

                    //阻止冒泡

                    if(event.stopPropagation())

                    {

                        event.stopPropagation();

                    }

                    else

                    {

                        event.cancelBubble = true;

                    }



                }









            }

 

 

你可能感兴趣的:(event)