点击切换样式、以及点击自身移除样式效果

 ***************无数的失败终究换来了成功!***************************

先来说下 Jquery:实现起来超级简单。

function popreplyjq() {//点击切换样式、以及点击自身移除样式功能
    $('.item-reply-btn').bind('click', function(e) {
        e.stopPropagation(); //阻止事件冒泡
        //一句话实现 点击自身切换样式效果
        $(e.currentTarget).toggleClass('item-reply-pop-trans');

        $this = $(this); //找到 该pop元素
        var poparry = $('.item-reply-pop-trans');
        //循环判断不是当前pop元素---移除其样式
        for (var i = 0; i < poparry.length; i++) {
          if (poparry[i] != $this[0]) {
            $(poparry[i]).removeClass('item-reply-pop-trans');
          }
        }
    });
}

详解:

e.currentTarget:
target与currentTarget的区别? 

通俗易懂的说法: 
比如说现在有A和B, 
A.addChild(B) 
A监听鼠标点击事件 
那么当点击B时,target是B,currentTarget是A 
也就是说,currentTarget始终是监听事件者,而target是事件的真正发出者 
toggleClass:对设置或移除被选元素的一个或多个类进行切换。   查看详情解释
if (poparry[i] != $this[0]) {}:循环判断不是当前pop元素---就移除其样式  【这个很重要,涉及一点逻辑】
posted on 2017-07-14 14:21  o笨小孩o  阅读(1109)  评论(0编辑  收藏  举报