uni-app中swiper标签在抖音小程序禁止用户touch操作属性无法使用
uni-app中swiper标签在抖音小程序禁止用户touch操作属性无法使用
操作步骤:
- 从HbuilderX编译到抖音小程序后,使用swiper标签属性
:disable-touch='true'后,用户依然能侧滑切换,这时候应该禁止用户touch操作。
预期结果:
- 使用swiper标签属性
:disable-touch='true'后, 应该禁止用户侧滑切换。
实际结果:
- 从HbuilderX编译到抖音小程序后,使用swiper标签属性
:disable-touch='true'后,用户依然能侧滑切换,这时候应该禁止用户touch操作。
bug描述:
- swiper标签抖音小程序禁止用户touch操作属性无法使用。
disable-touch属性值true以后,用户依然能侧滑切换swiper标签。swiper标签属性有这样的备注(抖音小程序与飞书小程序(只在初始化时有效,不能动态变更)),但是我这边也没有用过动态变更属性值。
图片

项目信息表
| 项目信息 | 值 |
|---|---|
| 产品分类 | uniapp/小程序/字节跳动 |
| PC开发环境操作系统 | Windows |
| PC开发环境操作系统版本号 | 21H2 |
| HBuilderX类型 | 正式 |
| HBuilderX版本号 | 3.99 |
| 第三方开发者工具版本号 | 4.2.0 |
| 基础库版本号 | 3.11.0.1 |
| 项目创建方式 | HBuilderX |
更多关于uni-app中swiper标签在抖音小程序禁止用户touch操作属性无法使用的实战教程也可以访问 https://www.itying.com/category-93-b0.html
抖音小程序文档中的swiper没有这个属性 也没有可以禁止用户侧滑切换的属性
应该是uniapp文档写错了
不过可以用其他方法实现这个效果 做个遮盖层 覆盖在swiper上 这样用户就不会触摸到swiper了 也就不能切换了
参考下方代码
<template>
<view>
<view class="swiper_box">
<swiper class="swiper" circular :autoplay="true">
<swiper-item>
<view class="swiper-item uni-bg-red">A</view>
</swiper-item>
<swiper-item>
<view class="swiper-item uni-bg-green">B</view>
</swiper-item>
<swiper-item>
<view class="swiper-item uni-bg-blue">C</view>
</swiper-item>
</swiper>
<view class="swiper_box_mask">
</view>
</view>
</view>
</template>
更多关于uni-app中swiper标签在抖音小程序禁止用户touch操作属性无法使用的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在 uni-app 中使用 swiper 组件时,如果你在抖音小程序中遇到无法禁止用户 touch 操作的问题,可能是因为抖音小程序对 swiper 组件的支持与微信小程序或其他平台有所不同。
在微信小程序中,你可以通过设置 disable-touch 属性来禁止用户手动滑动 swiper,但在抖音小程序中,这个属性可能不被支持或者行为不一致。
解决方案
-
使用
touchable属性: 抖音小程序的swiper组件可能支持touchable属性来控制是否允许用户手动滑动。你可以尝试设置touchable为false来禁止用户的touch操作。<swiper touchable="false"> <swiper-item>Slide 1</swiper-item> <swiper-item>Slide 2</swiper-item> <swiper-item>Slide 3</swiper-item> </swiper> -
使用
disable-touch属性(如果支持): 如果抖音小程序支持disable-touch属性,你可以尝试使用它来禁止用户手动滑动。<swiper disable-touch> <swiper-item>Slide 1</swiper-item> <swiper-item>Slide 2</swiper-item> <swiper-item>Slide 3</swiper-item> </swiper> -
通过事件拦截: 如果上述属性在抖音小程序中无效,你可以通过监听
touch事件并阻止默认行为来实现禁止用户手动滑动的效果。<swiper [@touchstart](/user/touchstart)="handleTouchStart" [@touchmove](/user/touchmove)="handleTouchMove"> <swiper-item>Slide 1</swiper-item> <swiper-item>Slide 2</swiper-item> <swiper-item>Slide 3</swiper-item> </swiper>export default { methods: { handleTouchStart(e) { // 阻止默认的 touch 事件 e.preventDefault(); }, handleTouchMove(e) { // 阻止默认的 touch 事件 e.preventDefault(); } } }

