美文网首页
长按事件 - 回调函数

长按事件 - 回调函数

作者: Christoles | 来源:发表于2019-02-25 01:10 被阅读0次

一、原理

  • setTimeout(function(){},time) ---- 表示 延迟 time毫秒后才执行function;
  • clearTimeout(timer) ---- 清除定时器,其中timer:表示你定义的计时器(名称)。
  • 监听:addEventListener()
  • 回调函数:callback() ---- 放在定义的funName的形参里,而在调用函数的实参中写的是function;调用的时候还是callback()

二、长按事件 - 回调函数 实现代码

实现事件:设置一个长按弹出对话框

  • html:
<div class="test"></div>
  • css:
.test{width: 200px;height: 200px;border: 1px solid #000000;}
  • javascript:
var div=document.querySelector(".test");//获取div
//封装长按功能的函数
function longpress(el,callback){//形参指(DOM元素,callback回调函数)
    var timer;//定义一个名称用于调用***
    //主逻辑代码***
    el.addEventListener("mousedown",function(){
    timer=setTimeout(function(){
        callback();//调用函数,设置延时器在1秒后才执行
    },1000)
});
    document.addEventListener("mouseup",function(){
        clearTimeout(timer);//当鼠标松开的时立即清除timer定时器
    });//这里的监听对象如果不是document/body/html,而还是el的话---会出现bug***:点击el立即移出el松开鼠标,不能清除定时器,就会执行回调函数。
}
longpress(div,function(){//这里封装需要实现的功能
    alert("哈哈哈哈哈");
});//调用方法---实参也可以是个函数

三、效果展示

长按div弹出对话框:


image.png

相关文章

  • 长按事件 - 回调函数

    一、原理 setTimeout(function(){},time) ---- 表示 延迟 time毫秒后才执...

  • 异步的实现

    异步的三种实现方式: 回调函数事件Promise 回调函数 回调函数不一定是异步 但是异步一定是回调函数。 事件 ...

  • libevent笔记

    bufferevent.h 传递到事件回调函数的事件 读写回调函数的原型 错误回调函数的原型 创建bufferev...

  • 51和stm32的按键采集

    1、实现按键回调事件,按下、断开、单击、双击、长按、长按持有等事件。 用这个库来实现https://github....

  • javascript高级-

    函数类型中,比较常用的是匿名函数和回调函数,一般来说,回调函数是以匿名函数的形式来进行表现的。回调函数在事件监听,...

  • Android 禁止输入框 EditText 复制粘贴

    实现 EditText 禁止复制粘贴菜单 禁止长按事件 ActionMode 回调 反射 android.widg...

  • 再看Promise

    Time: 2019-08-21 回调函数 是一种事件机制,某种事件完成后,会触发相应的回调函数。 Promise...

  • 9.回调函数

    Master进程内的回调函数 onStartServer启动在主进程的主线程回调此函数 onShutdown此事件...

  • jquery事件绑定

    事件绑定 1. jquery标准的绑定方式 jq对象.事件方法(回调函数); 注:如果调用事件方法,不传递回调函数...

  • 获取事件对象

    // 函数组件 function HelloFn () { // 定义事件回调函数 const clickHa...

网友评论

      本文标题:长按事件 - 回调函数

      本文链接:https://www.haomeiwen.com/subject/hwwiyqtx.html