上课不工作?

时间:2017-05-20 00:22:44

标签: javascript jquery

我有一个jquery方法,它应该检查菜单是否打开(使用类),以及是否在该类的元素外面发生了单击。

到目前为止,它取消了开放的购物车,因为它会立即添加类(打开)删除类。

我不确定发生了什么,因为那不是我告诉我的代码。

有什么想法吗?

$(document).on('click', function (e) {
    if (jQuery('body').hasClass("cbp-spmenu-push-toleft") == true 
        && jQuery(e.target).hasClass('cbp-spmenu-open') == false) 
    {
        console.log('clock')
        jQuery('body').removeClass('cbp-spmenu-push-toleft')
        jQuery('#cbp-spmenu-s2').removeClass('cbp-spmenu-open')
    }
}

1 个答案:

答案 0 :(得分:0)

e.target这指的是点击发生的任何元素,而不是您认为的那个

你应该把

//$(document)
$("#cbp-spmenu-s2").on('click', function () {
  if ($('body').hasClass("cbp-spmenu-push-toleft")&&!$(this).hasClass('cbp-spmenu-open')) {
    console.log('clock')
    $('body').removeClass('cbp-spmenu-push-toleft');
    $('#cbp-spmenu-s2').removeClass('cbp-spmenu-open');
  }
});