首页
学习
活动
专区
圈层
工具
发布

JavaScript 技巧篇-js增加延迟时间解决单击双击事件冲突,双击事件触发单击事件

js 的单双击事件同时存在会有一个问题:双击事件会同时触发单击事件,两个事件存在冲突。 我们加一个延迟时间就能很好的解决这个问题。...原理: 当接收到第一个点击时,我们先把单击事件存储在这个是全局变量 click_store 里,如果 0.3 秒内没有接收到双击事件,就去执行它,如果接收到了,我们把它清理掉,然后去执行双击事件。...var click_store // 定义一个全局变量存储单击触发事件 document.addEventListener('click', deal_click); document.addEventListener...('dblclick', deal_dblclick); function deal_click(e){ click_store = setTimeout(function(e){ // 单击触发事件...,0.3s延迟 ... },300); } function deal_dblclick(e){ // 单击事件清理 clearTimeout(click_store); // 双击触发事件

7.4K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    第77天:jQuery事件绑定触发

    2、坐标值 $(“div”).offset(); // 获取或设置坐标值 设置值后变成相对定位 $(“div”).position(); // 获取坐标值 子绝父相 只能读取不能设置 3、滚动条(滚动事件...(“div”).scrollTop(); // 相对于滚动条顶部的偏移 $(“div”).scrolllLeft(); // 相对于滚动条左部的偏移 案例:两次跟随的广告 案例:防腾讯固定导航栏 二、jQuery...事件 1、绑定 click/mouseenter/blur/keyup // 绑定事件 bind:$node.bind(“click”,function(){}); // 触发一次 one : $node.one...node.delegate(“p”,”click”,function(){}); on: $node.on(“click”,”p”,function(){}); 2、 解绑 unbind、undelegate off 3、触发...click : $(“div”).click(); trigger:触发事件,并且触发浏览器默认行为 triggerHandler:不触发浏览器默认行为

    1.8K30

    jQuery自动触发事件与bootstrapjQuery插件用法

    jQuery自动触发事件与bootstrap/jQuery插件用法 jQuery自动触发事件: 有些事件希望自动触发,比如轮播图自动播放功能跟点击右侧按钮一致。...可以利用定时器自动触发右侧按钮点击事件,不必鼠标点击触发。...语法: 1、element.click(); 2、element.trigger(); 3、element.triggerHandler("event-type") jQuery事件对象: 事件被触发...,就会有事件对象的产生. element.on (events, [selector] ,function(event) {}) 阻止默认行为:event.preventDefault()或者return...注意:这些插件也是依赖于jQuery来完成的,所以必须要先引入jQuery文件 JQuery插件常用的网站: 1.jQuery插件库 jQuery插件库-收集最全最新最好的jQuery插件 jQuery

    7.3K10

    大型项目技术栈第七讲 Chosen的使用

    selected:标识选项“选中与否” disabled:禁止选中 4、触发事件 Chosen 会在源 元素上触发事件。...")) //获取所有被选中元素 }) 事件 描述 change Chosen 触发标准的 change 事件,同时会传递 selected or deselected 参数, 方便用户获取改变的选项...chosen:ready Chosen 实例化完成时触发 chosen:maxselected 超过 max_selected_options 设置时触发 chosen:showing_dropdown...Chosen 下拉选框打开完成时触发 chosen:hiding_dropdown Chosen 下拉选框关闭完成时触发 chosen:no_results 搜索没有匹配项时触发 注意:所有 Chosen...自定义事件 都包含 Chosen 实例 chosen 对象作为参数 5、Chosen 监听的事件 通过在 元素上触发特定事件可以调用 Chosen 的监听函数。

    5.2K40

    Jump Start Bootstrap 第4章

    要通过JQuery触发下拉插件,你需要使用方法dropdown(); $().dropdown('toggle'); 在页面加载后,我们可以使用这个方法把下拉插件的从关闭状态切换到开启状态。...Bootstrap为下拉插件提供了一些附加事件,它们是: show.bs.dropdown: 这个事件在句柄被单击时触发;下拉句柄收到请求去显示隐藏菜单; shown.bs.dropdown: 这个事件在菜单被显示时触发...; hide.bs.dropdown: 这个事件在菜单关闭前触发; hidden.bs.dropdown: 这个事件在菜单关闭后触发; show或hide事件在完成请求之前发生,而在请求完成时触发shown...让我展示一个如何使用这些事件的例子。我已经写了下面的JQuery代码片段去监听所有的下拉插件状态,并打印每个事件触发时的状态。 单击事件映射到相应的选项卡窗格。这些链接中的href属性应该包含相应的选项卡窗格的id。

    34.9K40

    jquery中动态新增的元素节点无法触发事件解决办法

    在使用jquery中动态新增的元素节点时会发现添加的事件是无法触发的,我们下面就为各位来详细的介绍此问题的解决办法.   ...每条留言后面有个回复按钮,class为“reply”,如果你用的是$(".reply").click(function(){ //do something... }),想必后面通过ajax加载进来的列表中的回复按钮,点击事件会失效...其实最简单的方法就是直接在标签中写onclick="",但是这样写其实是有点low的,最好的方式还是通过给类名绑定一个click事件。...解决jquery中动态新增的元素节点无法触发事件的问题有两种解决方法,如下: 方法一:使用live   live()函数会给被选的元素绑定上一个或者多个事件处理程序,并且规定当这些事件发生时运行的函数。...实现如下: $('.liLabel').live('click', function(){ alert('OK'); }); 方法二:使用on   可以通过on方法绑定事件,可以绑定到它的父级或者

    2.7K20

    jQuery之事件绑定到触发全过程及知识点补充

    可以看到 jQuery的事件和触发事件的handler是分离的, 事件集合 存在 事件缓存dataPriv的events上, //获取数据缓存 elemData = dataPriv.get( elem...two触发') }) events是jQuery内部的事件队列 handle是真正绑定到element上的事件处理函数 body:{ events:{ click:[ 0:{...trigger的机制去触发click事件, 正是因为jQuery没有直接把事件相关的handler与元素直接绑定,而是采用了分离处理, 所以我们通过trigger触发click事件与addEventListener...触发click事件的处理流程是一致的,不同的只是触发的方式而已。...trigger方法了 关于$().trigger()的源码解析请看:jQuery源码解析之trigger() ---- 最后,附上自己做的 jQuery事件绑定到触发全过程的流程图: ?

    1.1K10

    jquery对象和dom对象的相互转换

    id为msg的元素的单击事件 $("#msg").click(fn);   //为id为msg的元素单击事件添加函数 同样blur,focus,select,submit事件都可以有着两种调用方法 5...=['#f00','#0f0','#00f'][i]}) //为三个不同的p元素单击事件分别设定不同的处理 jQuery中几个自定义的事件: (1)hover(fn1,fn2):一个模仿悬停事件(鼠标移动到一个对象上面...");  }); (4)trigger(eventtype): 在每一个匹配的元素上触发某类事件。...例如: $("p").trigger("click");     //触发所有p元素的click事件 (5)bind(eventtype,fn),unbind(eventtype): 事件的绑定与反绑定...p元素上的所有事件 $("p").unbind("click")   //删除所有p元素上的单击事件 10、几个实用特效功能 其中toggle()和slidetoggle()方法提供了状态切换功能。

    4.5K40
    领券