zoukankan      html  css  js  c++  java
  • react,vue移动端(手机端)长按事件

    这里以react为例,vue差不多
    render中随意定义一个

    <div className={styles.commodity} key={index2} onTouchStart={this.start} onTouchMove={this.move} onTouchEnd={this.end}>
    
    
    constructor(props) {
        super(props);
        this.state = {
          checkAll: false,
          longClick:0,  // 长按标志
          timeOutEvent: 0,  // 计时器
        };
      }
      start= ()=>{
        console.log("----start----")
        this.setState({timeOutEvent : setTimeout(()=>{
            this.setState({longClick : 1});  //  长按标志位
            // 此处为长按事件
            console.log("长按事件")
        },1500)})
      }
    
      move=(e)=>{
        console.log("----move----",this.state.timeOutEvent,this.state.longClick)
        clearTimeout(this.state.timeOutEvent)
        this.setState({longClick : 0});  // 清除标志位
        e.preventDefault();  // 阻止其他点击事件
      }
      end=(e)=>{
        clearTimeout(this.state.timeOutEvent)
        this.setState({longClick : 0});  // 清除标志位
        console.log("----end----",this.state.timeOutEvent,this.state.longClick)
    
        if(this.state.timeOutEvent !=0 && this.state.longClick==0){  // 判断是否非长按事件
             //此处为点击事件
            console.log('点击事件')
         }
         return false;
        }
    
    
  • 相关阅读:
    Codeforces Round #384 (Div. 2) 解题报告
    Codeforces Round #383 (Div. 2) 解题报告
    (DFS、bitset)AOJ-0525 Osenbei
    (DFS、全排列)POJ-3187 Backward Digit Sums
    自考新教材-p169
    自考新教材-p167
    自考新教材-p166
    自考新教材-p165
    自考新教材-p161
    自考新教材-p159
  • 原文地址:https://www.cnblogs.com/caoxueyang/p/14371122.html
Copyright © 2011-2022 走看看