将其设置为false后重新激活jquery click方法

时间:2018-08-30 11:26:36

标签: javascript jquery

我有一个click方法,当某个元素具有一个类时,我想将其禁用。

if($('.returningUserPanel').hasClass('is-active')){
   $('.item-cart .panel-trigger').click(false);
}

在上面,我将click方法设置为false,但是我想对这种click方法进行反应,但是将.click(true)设置为true不是那么简单吗?

$('.continue-shopping-link').on('click', function(){
    $('.item-cart .panel-trigger').click(true);
    $('.returningUserPanel').removeClass('is-active is-visible');
})

有人可以帮我吗?

1 个答案:

答案 0 :(得分:1)

您需要保留对点击处理程序的引用,例如const self = this; this.shadowRoot.querySelector('#stop').addEventListener('click', function() { self.enableCount = false; }) 并进行设置:
-function myClickHandler = fucntion() {}
off -$('.item-cart .panel-trigger').click(myClickHandler);
根据您的逻辑。

但是更干净的解决方案是让处理程序保持运行并在内部决定是否执行此操作。