事件对象event

事件对象event

是一个对象,当一个事件被触发时,就会产生一个event对象,其作用为装事件发生时的各项属性。

包括 事件类型type(单机双击之类的),目标元素。target()还有一些有关的方法,

事件触发后,要取消的话,用preventDefault();

获取event事件对象和获取触发事件的dom对象target在IE11开始不用赋值,可以直接使用

在浏览器中如果要赋值,可以

var event = event||window.event;

var target = event.target||event.srcElement;

其中对于target,使用时会有一个问题:

当你用父级元素监听一个事件,而你点击它的子元素时,也就是说把target属性给这个字元素,可能会出现无响应的问题,原文出自:

target在事件流的目标阶段;currentTarget在事件流的捕获,目标及冒泡阶段。只有当事件流处在目标阶段的时候,两个的指向才是一样的, 而当处于捕获和冒泡阶段的时候,target指向被单击的对象而currentTarget指向当前事件活动的对象(一般为父级)。

所以,我们可以把子元素的target改成currentTarget,这样,他们指向的对象就一致了。

从这里,以及target的翻译,可以把上面的“”理解为,具有target属性的元素,处在目标阶段,即事件触发动作的指向

可以用三个具有相同类名的li标签解释

function over1(e){
        var li1 = document.querySelectorAll(".li");
        
        for ( var i = 0 ; i < li1.length ; i++){
            li1[i].style.backgroundImage =" url(images/bg1.gif) ";
            e.target

        }
    e.target.style.backgroundImage = "url(images/bg2.gif)";
    
    }

猜你喜欢

转载自www.cnblogs.com/SweeneyHuo/p/9339569.html
今日推荐