javascript - 使用 jQuery 防止连续点击绑定(bind)在 div 上

标签 javascript jquery event-handling jquery-events

我正在玩 slider 脚本。在脚本中,左右箭头包裹在一个 div 中,单击事件绑定(bind)在 div 上。它没有问题,但是当它点击 div 时我需要什么,我需要防止连续点击两秒钟。然后它应该可以再次点击。如果有任何建议,我将不胜感激。

$container.find('.laos-slider-controls').bind('click',function(){
  var target = $(this).attr('data-target');
  if(target!='next'&&target!='prev') target=parseInt(target);
  changeSlides(target);
});

HTML 是:

<div class="laos-slider-controls-wrapper">
  <div class="laos-slider-controls" data-target="prev">&lsaquo;</div>
  <div class="laos-slider-controls" data-target="next">&rsaquo;</div>
  <ul class="laos-slider-pagers"></ul>
</div>

最佳答案

一种可能的解决方案是使用标志变量 isClickable 和超时在特定时间后重置此标志变量。

(function () {
    var isClickable = true;

    $container.find('.laos-slider-controls').bind('click',function(){
        if (isClickable) {
            var target = $(this).attr('data-target');
            if(target!='next'&&target!='prev') target=parseInt(target);
            changeSlides(target);

            isClickable = false;

            setTimeout(function () {
                isClickable = true;
            }, 2000);
        }
    });
})();

关于javascript - 使用 jQuery 防止连续点击绑定(bind)在 div 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23891273/

相关文章:

ajax 启动时 Jquery 阻止 UI

javascript - 使用纯 JavaScript 获取事件的选择元素值

c# - 如何在代码中读取对象的 DependencyProperty?

javascript - 检测触摸屏设备上虚拟键盘的打开或关闭

javascript - 从对象和键数组中查找值

javascript - 加载的内容不能调用父函数

javascript - 将两个客户端数据保存到一个变量中?

javascript - .bind 的替代方案

javascript - 如何阻止页面之间简单的 javascript 冲突?

javascript - 使用 knockout 创建的 jquery 选择选项