微信小程序实现上下手势滑动切换

效果图

思路

实现一个微信小程序的复合滚动页面,主要通过Swiper组件实现垂直方向的轮播功能,每个轮播项内部使用Scroll-View组件来展示可垂直滚动的长内容,如图片和文本。

代码

html 复制代码
<!-- wxml -->
<view class="swiper-container">
  <swiper class="swiper" vertical="true" bindchange="onSwiperChange">
    <swiper-item>
      <!-- 第一个模块的滚动视图 -->
      <scroll-view class="scroll-view" scroll-y="true">
        <!-- 这里是第一个模块的长内容 -->
        <view class="long-content">
		    <image class="img" src="http://img0.baidu.com/it/u=1836749971,2875128665&fm=253&app=138&f=JPEG?w=800&h=1129&#34;     mode=""/>
        </view>
      </scroll-view>
    </swiper-item>
    <swiper-item>
      <!-- 第二个模块的滚动视图 -->
      <scroll-view class="scroll-view" scroll-y="true">
        <!-- 这里是第二个模块的长内容 -->
        <view class="long-content">
          <image class="img" src="https://p9-pc-sign.douyinpic.com/tos-cn-i-0813/8506ad012d1d40ff8940482f2a69e7ca~tplv-dy-aweme-images:q75.webp?biz_tag=aweme_images&from=3213915784&s=PackSourceEnum_AWEME_DETAIL&sc=image&se=false&x-expires=1712764800&x-signature=alMSPxEM4w4svYO29%2BIIpY8Wsog%3D&#34;     mode=""/>
        </view>
      </scroll-view>
    </swiper-item>
  </swiper>
</view>
css 复制代码
/* wxss */
.swiper-container {
  width: 100vw;
	height: 100vh;
	background-color: black;
}
.swiper {
  width: 100%;
  height: 100%;
}
.scroll-view {
  width: 100%;
  height: 100%;
}
.long-content {
	height: 100vh;
}
.img {
	width: 100%;
	height: 100%;
}
javascript 复制代码
// js
Page({
  data: {
    current: 0
  },
  onSwiperChange(e) {
    // 当swiper的current改变时,处理切换逻辑
    console.log('当前swiper-item的索引:', e.detail.current);
  }
});

其他

其他方式实现:微信小程序页面上下滚动 - 灰信网(软件开发博客聚合),发现的问题:鼠标中键直接滚动会导致页面切换不彻底(相当于页面A和页面B拼接成一个页面滑动)。

相关推荐
笨笨狗吞噬者31 分钟前
小程序包体积分析利器 -- vite-plugin-component-insight
前端·微信小程序·uni-app
杰建云1673 小时前
小程序转化率低的核心原因是什么?
小程序·小程序制作
中国胖子风清扬3 小时前
基于GPUI框架构建现代化待办事项应用:从架构设计到业务落地
java·spring boot·macos·小程序·rust·uni-app·web app
Greg_Zhong4 小时前
微信小程序中使用canvas中绘制的页面,切换字体的几种实践方式
微信小程序·腾讯云cos·canvas页面切换字体
weikecms4 小时前
外卖CPS小程序哪家系统比较完善
小程序
绝世唐门三哥1 天前
uniapp系列-uniappp都有哪些生命周期?
vue.js·小程序·uniapp
人还是要有梦想的1 天前
如何开发小程序介绍
小程序·notepad++
roamingcode1 天前
支付宝小程序数据可视化避坑指南:@antv/f2 踩坑与最佳实践
信息可视化·小程序·canvas·antv
2501_915921431 天前
HTTP和HTTPS协议全面解析:技术原理与安全应用
安全·http·ios·小程序·https·uni-app·iphone
double_eggm2 天前
微信小程序2
微信小程序·小程序