vue移动端如何解决click事件延迟,封装tap等事件

 更新时间:2022年03月28日 08:51:42   作者:狗蛋*  
这篇文章主要介绍了vue移动端如何解决click事件延迟,封装tap等事件,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

移动端解决click事件延迟,封装tap等事件

下载vue-touch.js

引入:

<script src="js/vue-touch.js" type="text/javascript" charset="utf-8"></script>

导航条tab:

<div>
                <ul>
                    <li v-tap="{fn:vueTouch,active:0}" :class="{'activezixun':active===0}">全部</li>
                    <li v-tap="{fn:vueTouch,active:1}" :class="{'activezixun':active===1}">养车知识</li>
                    <li v-tap="{fn:vueTouch,active:2}" :class="{'activezixun':active===2}">爱车保养</li>
                    <li v-tap="{fn:vueTouch,active:3}" :class="{'activezixun':active===3}">汽车维修</li>
                </ul>
            </div>

tab对应的列表页:

<div class="zixunQuanbu" v-show="active===0">
				<div class="items">
				    <a href="zixunItems1.html" rel="external nofollow"  rel="external nofollow"  rel="external nofollow"  rel="external nofollow" >
    					<img class="items-img" src="img/zixun1.png"/>
    					<p class="items-title">跑了10万公里的车,相当于人的多少岁别在“黄金车龄”把车卖了</p>
    					<p class="items-jianjie"><span class="jianjie-one">对于一辆车来说,它在正常情况下可供时间</span></p>
    					<p class="items-time">2019-04-20 <span class="mui-icon iconfont iconyanjing"></span><span class="liulanliang">1265</span></p>
					</a>
				</div>
 
			</div>
			<!--养车知识-->
			<div class="zixunQuanbu" v-show="active===1">
                <div class="items">
                    <a href="zixunItems1.html" rel="external nofollow"  rel="external nofollow"  rel="external nofollow"  rel="external nofollow" >
                        <img class="items-img" src="img/zixun2.png"/>
                        <p class="items-title">开车是累了记得打开“防疲劳按键”, 有人直到车子报废也没有开过</p>
                        <p class="items-jianjie"><span class="jianjie-one">其实疲劳驾驶也是有预防措施的,汽车上有</span></p>
                        <p class="items-time">2019-03-20 <span class="mui-icon iconfont iconyanjing"></span><span class="liulanliang">1265</span></p>
                    </a>
                </div>
                
            </div>
            <!--爱车保养-->
            <div class="zixunQuanbu" v-show="active===2">
                <div class="items">
                    <a href="zixunItems1.html" rel="external nofollow"  rel="external nofollow"  rel="external nofollow"  rel="external nofollow" >
                        <img class="items-img" src="img/zixun3.png"/>
                        <p class="items-title">停车后直接就熄火下车?老司机告诉 你:发动机至少折寿5年!</p>
                        <p class="items-jianjie"><span class="jianjie-one">在停车熄火之前随手多做一步,能让把发动</span></p>
                        <p class="items-time">2019-02-20 <span class="mui-icon iconfont iconyanjing"></span><span class="liulanliang">1265</span></p>
                    </a>
                </div>
                
            </div>
            <!--汽车维修-->
            <div class="zixunQuanbu" v-show="active===3">
                <div class="items">
                    <a href="zixunItems1.html" rel="external nofollow"  rel="external nofollow"  rel="external nofollow"  rel="external nofollow" >
                        <img class="items-img" src="img/zixun4.png"/>
                        <p class="items-title">这些地方的螺丝被动过,说明你买的是 事故车,一定要注意了</p>
                        <p class="items-jianjie"><span class="jianjie-one">随着汽车市场的不断发展车子的保有量也不断</span></p>
                        <p class="items-time">2019-03-20 <span class="mui-icon iconfont iconyanjing"></span><span class="liulanliang">1265</span></p>
                    </a>
                </div>
                
            </div>

vue.js:

var vm = new Vue({
                el: '#zixunClass',
                data: {
                    "active": 0
                },
                methods: {
                    vueTouch:function(a){
                        this.active=a.active;
                    }
                }
            })

移动端click事件失效

可能是你使用了better-scroll,默认它会阻止touch事件。所以在配置中需要加上click: true

例:

import BScroll from 'better-scroll'
mounted() {
    this.scroll = new BScroll(this.$refs.search, {mouseWheel: true, click: true, tap: true })
  },

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。 

相关文章

  • 如何在ElementUI的上传组件el-upload中设置header

    如何在ElementUI的上传组件el-upload中设置header

    这篇文章主要介绍了如何在ElementUI的上传组件el-upload中设置header,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • 开发一个封装iframe的vue组件

    开发一个封装iframe的vue组件

    这篇文章主要介绍了开发一个封装iframe的vue组件,帮助大家更好的理解和学习使用vue框架,感兴趣的朋友可以了解下
    2021-03-03
  • Vue的底层原理你了解多少

    Vue的底层原理你了解多少

    这篇文章主要为大家详细介绍了Vue的底层原理,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-02-02
  • 使用vue3实现简单的滑块组件

    使用vue3实现简单的滑块组件

    这篇文章主要给大家介绍一下如何使用vue3实现简单的滑块组件,文中有详细的代码示例讲解,具有一定的参考价值,感兴趣的小伙伴跟着小编一起来看看吧
    2023-08-08
  • Vue中key的作用示例代码详解

    Vue中key的作用示例代码详解

    key的特殊attribute主要用在Vue的虚拟DOM算法,在新旧Nodes对比时辨识VNodes。这篇文章主要给大家介绍Vue中key的作用,感兴趣的朋友跟随小编一起看看吧
    2020-06-06
  • 基于axios 的responseType类型的设置方法

    基于axios 的responseType类型的设置方法

    今天小编就为大家分享一篇基于axios 的responseType类型的设置方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • 关于vue3中的reactive赋值问题

    关于vue3中的reactive赋值问题

    这篇文章主要介绍了关于vue3中的reactive赋值问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • Vue之Axios的异步请求问题详解

    Vue之Axios的异步请求问题详解

    总的来说这并不是一道难题,那为什么要拿出这道题介绍?拿出这道题真正想要传达的是解题的思路,以及不断优化探寻最优解的过程。希望通过这道题能给你带来一种解题优化的思路,Axios是一个开源的可以用在浏览器端和Node JS的异步通信框架,主要作用就是实现AJAX异步通信
    2023-02-02
  • Vue父子组件通信全面详细介绍

    Vue父子组件通信全面详细介绍

    这篇文章主要介绍了React中父子组件通信详解,在父组件中,为子组件添加属性数据,即可实现父组件向子组件通信,文章通过围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-10-10
  • 关于VUE的编译作用域及slot作用域插槽问题

    关于VUE的编译作用域及slot作用域插槽问题

    这篇文章主要介绍了VUE 的编译作用域及slot作用域插槽问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-07-07

最新评论