Vue 3:防止 Swiper 使用鼠标而不是手指滑动

如何解决Vue 3:防止 Swiper 使用鼠标而不是手指滑动

在 Swiper 中使用鼠标时,我试图停止 pointerdown 事件,但在用手指 (https://swiperjs.com/swiper-api#methods-and-properties) 触摸时它应该仍然有效。 我已经尝试过使用“swiper.allowTouchMove”属性,但它也会停用触摸。

当我还试图在@touchStart 中停止传播以捕捉鼠标时,它说该函数不存在(Uncaught TypeError: e.stopPropagation is not a function)。

我非常感谢您提供有关如何仅通过鼠标事件停用滑动的建议。

谢谢!

这是我的代码:

<template>
  <div>
    <swiper
        @touchStart.stop="touchMove" **NOT WORKING**
        virtual
        navigation
    >
      <swiper-slide
          v-for="(slideContent,index) in slides"
          :key="slideContent"
          :virtualIndex="index"
          v-html="slideContent"
      ></swiper-slide>
    </swiper>
  </div>
</template>

<script>
import SwiperCore,{ Virtual,Navigation } from 'swiper';
import { Swiper,SwiperSlide } from 'swiper/vue';

import 'swiper/components/navigation/navigation.scss';
import 'swiper/swiper.scss';
import 'swiper/components/effect-fade/effect-fade.scss';
// scroll container,virtual slides,navigation
SwiperCore.use([Virtual,Navigation]);

export default {
  components: {
    Swiper,SwiperSlide,},setup() {
    console.log(this)
  },methods: {
    touchStart: function (swiper,event) {
      console.log(swiper)
      console.log(event.type)
    },touchMove: function (swiper,event) {
      swiper.slideNext(1)
      console.log('test')
    }
  },data() {
    // Create array with 1000 slides
    const slides = Array.from({ length: 1000 }).map(
        (el,index) => '<html><body>Lorem ipsum dolor sit amet,consectetur adipiscing elit. Aliquam at viverra mauris. Nullam aliquet eros diam,eget cursus augue tincidunt vitae. Nullam ac tortor non justo fermentum maximus at ac diam. Lorem ipsum dolor sit amet,consectetur adipiscing elit. Aliquam porttitor nisl ut turpis cursus,id dapibus diam vulputate. Vestibulum id ultricies nibh,id viverra urna. Maecenas venenatis sem vitae leo porta,sed euismod urna molestie. Nunc id dui orci. Donec fermentum maximus lorem,eu efficitur enim porttitor ut. Quisque non eros ac odio pulvinar rutrum eget feugiat sem. Integer ut sapien a justo commodo suscipit. Vestibulum eget feugiat libero. Nulla luctus semper quam,vitae cursus purus tincidunt posuere. Mauris ut tellus sed neque porta auctor quis sit amet ex. Nam elementum condimentum odio,at varius nisi faucibus id.\n' +
            '\n' +
            'Cras tincidunt,nunc a eleifend vestibulum,ligula velit ornare libero,a faucibus sapien ante consequat eros. Nam nunc ipsum,semper sit amet lorem in,lobortis blandit ligula. Proin mollis,libero blandit elementum bibendum,lorem lacus fringilla nulla,a viverra quam purus vitae ligula. Sed vel facilisis nulla. Suspendisse viverra nisl sed lectus scelerisque,bibendum blandit velit dapibus. Curabitur metus felis,tempor vel tincidunt a,volutpat in ex. Duis egestas dolor suscipit justo dapibus ornare. Praesent vehicula volutpat neque,in convallis eros placerat ac. Phasellus id ligula sagittis,finibus ante ut,fringilla lacus. Maecenas in magna id erat viverra semper. Duis quis facilisis tellus,a lobortis elit. Etiam ornare sodales malesuada.\n' +
            '\n' +
            'Duis porttitor vitae ipsum dictum auctor. Nullam eget velit eu mi laoreet sollicitudin vel quis tellus. Duis feugiat massa nec magna tristique,sit amet scelerisque justo dignissim. Phasellus tincidunt consequat efficitur. In mollis quam sed ullamcorper fringilla. Maecenas pulvinar risus vel purus congue semper. Etiam varius accumsan aliquet. Sed in dictum est,quis accumsan ante. Sed lobortis nisl ut dolor rhoncus suscipit. Quisque fermentum,ex et consequat convallis,nibh quam consequat lacus,nec mattis ligula massa vel augue. Aliquam erat volutpat. In fermentum nisl quis ultrices congue.\n' +
            '\n' +
            'Donec eleifend neque et purus bibendum,a consectetur magna volutpat. Nunc facilisis nisl dui,in facilisis turpis convallis fringilla. Phasellus ornare sapien nec urna sollicitudin auctor sed at massa. Ut felis magna,faucibus id posuere vel,iaculis id orci. Ut a odio ac lacus malesuada semper sit amet convallis libero. Cras at mollis orci. Maecenas est lorem,placerat eget vestibulum id,pretium venenatis enim.\n' +
            '\n' +
            'Ut mattis tincidunt eleifend. Ut eu lorem nibh. In sed risus velit. Vivamus in dapibus nunc,ultricies tincidunt ligula. Orci varius natoque penatibus et magnis dis parturient montes,nascetur ridiculus mus. Ut vestibulum bibendum elementum. Nullam maximus,purus eget rhoncus eleifend,quam quam malesuada tortor,a consectetur dolor ex vitae felis. Sed justo urna,fermentum sit amet enim nec,tincidunt pellentesque leo. Sed sed tincidunt felis. Nulla sagittis,felis sed convallis vehicula,nunc justo luctus velit,eget finibus nulla est vel mi. Maecenas euismod turpis ut mi gravida tincidunt.</body></html>'
    );
    return {
      slides,};
  },};
</script>

<style>
@media only screen and (max-width: 600px) {
  .swiper-button-prev::after,.swiper-button-next::after {
    visibility: hidden;
  }
}
@media only screen and (min-width: 601px) {
  .swiper-container {
    padding-left: 105px;
    padding-right: 105px;
  }
}

.swiper-slide-next,.swiper-slide-prev {
  visibility: hidden;
}

.swiper-container-horizontal > .swiper-navigation{
  position: absolute;
  bottom: 0;
}

.swiper-button-prev::after,.swiper-button-next::after {
  position: fixed;
  top: 50%;
}
</style>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


使用本地python环境可以成功执行 import pandas as pd import matplotlib.pyplot as plt # 设置字体 plt.rcParams[&#39;font.sans-serif&#39;] = [&#39;SimHei&#39;] # 能正确显示负号 p
错误1:Request method ‘DELETE‘ not supported 错误还原:controller层有一个接口,访问该接口时报错:Request method ‘DELETE‘ not supported 错误原因:没有接收到前端传入的参数,修改为如下 参考 错误2:cannot r
错误1:启动docker镜像时报错:Error response from daemon: driver failed programming external connectivity on endpoint quirky_allen 解决方法:重启docker -&gt; systemctl r
错误1:private field ‘xxx‘ is never assigned 按Altʾnter快捷键,选择第2项 参考:https://blog.csdn.net/shi_hong_fei_hei/article/details/88814070 错误2:启动时报错,不能找到主启动类 #
报错如下,通过源不能下载,最后警告pip需升级版本 Requirement already satisfied: pip in c:\users\ychen\appdata\local\programs\python\python310\lib\site-packages (22.0.4) Coll
错误1:maven打包报错 错误还原:使用maven打包项目时报错如下 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources (default-resources)
错误1:服务调用时报错 服务消费者模块assess通过openFeign调用服务提供者模块hires 如下为服务提供者模块hires的控制层接口 @RestController @RequestMapping(&quot;/hires&quot;) public class FeignControl
错误1:运行项目后报如下错误 解决方案 报错2:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project sb 解决方案:在pom.
参考 错误原因 过滤器或拦截器在生效时,redisTemplate还没有注入 解决方案:在注入容器时就生效 @Component //项目运行时就注入Spring容器 public class RedisBean { @Resource private RedisTemplate&lt;String
使用vite构建项目报错 C:\Users\ychen\work&gt;npm init @vitejs/app @vitejs/create-app is deprecated, use npm init vite instead C:\Users\ychen\AppData\Local\npm-
参考1 参考2 解决方案 # 点击安装源 协议选择 http:// 路径填写 mirrors.aliyun.com/centos/8.3.2011/BaseOS/x86_64/os URL类型 软件库URL 其他路径 # 版本 7 mirrors.aliyun.com/centos/7/os/x86
报错1 [root@slave1 data_mocker]# kafka-console-consumer.sh --bootstrap-server slave1:9092 --topic topic_db [2023-12-19 18:31:12,770] WARN [Consumer clie
错误1 # 重写数据 hive (edu)&gt; insert overwrite table dwd_trade_cart_add_inc &gt; select data.id, &gt; data.user_id, &gt; data.course_id, &gt; date_format(
错误1 hive (edu)&gt; insert into huanhuan values(1,&#39;haoge&#39;); Query ID = root_20240110071417_fe1517ad-3607-41f4-bdcf-d00b98ac443e Total jobs = 1
报错1:执行到如下就不执行了,没有显示Successfully registered new MBean. [root@slave1 bin]# /usr/local/software/flume-1.9.0/bin/flume-ng agent -n a1 -c /usr/local/softwa
虚拟及没有启动任何服务器查看jps会显示jps,如果没有显示任何东西 [root@slave2 ~]# jps 9647 Jps 解决方案 # 进入/tmp查看 [root@slave1 dfs]# cd /tmp [root@slave1 tmp]# ll 总用量 48 drwxr-xr-x. 2
报错1 hive&gt; show databases; OK Failed with exception java.io.IOException:java.lang.RuntimeException: Error in configuring object Time taken: 0.474 se
报错1 [root@localhost ~]# vim -bash: vim: 未找到命令 安装vim yum -y install vim* # 查看是否安装成功 [root@hadoop01 hadoop]# rpm -qa |grep vim vim-X11-7.4.629-8.el7_9.x
修改hadoop配置 vi /usr/local/software/hadoop-2.9.2/etc/hadoop/yarn-site.xml # 添加如下 &lt;configuration&gt; &lt;property&gt; &lt;name&gt;yarn.nodemanager.res