微信小程序实现顶部选项卡(swiper)

发布时间 - 2026-01-11 02:58:29    点击率:

微信小程序顶部选项卡在开发中是非常常用的,下面用一点时间实现了一下。

效果图:

下面直接上代码:

wxml:

<!--pages/index/index.wxml--> 
<view class="swiper-tab"> 
 <view class="tab-item {{currentTab==0 ? 'on' : ''}}" data-current="0" bindtap="swichNav">选项一</view> 
 <view class="tab-item {{currentTab==1 ? 'on' : ''}}" data-current="1" bindtap="swichNav">选项二</view> 
 <view class="tab-item {{currentTab==2 ? 'on' : ''}}" data-current="2" bindtap="swichNav">选项三</view> 
</view> 
 
<swiper current="{{currentTab}}" class="swiper" duration="300" style="height:{{winHeight - 30}}px" bindchange="bindChange"> 
 <swiper-item> 
 <view>页面一</view> 
 </swiper-item> 
 <swiper-item> 
 <view>页面二</view> 
 </swiper-item> 
 <swiper-item> 
 <view>页面三</view> 
 </swiper-item> 
</swiper> 

wxss:

/* pages/index/index.wxss */ 
.swiper-tab{ 
 width: 100%; 
 text-align: center; 
 line-height: 80rpx; 
 border-bottom: 1px solid #000; 
 display: flex; 
 flex-direction: row; 
 justify-content: center; 
} 
.tab-item{ 
 flex: 1; 
 font-size: 30rpx; 
 display: inline-block; 
 color: #777777; 
} 
.on{ 
 color: red; 
 border-bottom: 5rpx solid red; 
} 
.swiper{ display: block; height: 100%; width: 100%; overflow: hidden; } 
.swiper view{ 
 text-align: center; 
 padding-top: 100rpx; 
} 

js:

// pages/index/index.js 
Page({ 
 
 /** 
 * 页面的初始数据 
 */ 
 data: { 
 winWidth:0, 
 winHeight:0, 
 currentTab:0 
 }, 
 
 /** 
 * 生命周期函数--监听页面加载 
 */ 
 onLoad: function (options) { 
 var that = this; 
 
 /** 
 * 获取系统信息 
 */ 
 wx.getSystemInfo({ 
 
 success: function (res) { 
 that.setData({ 
  winWidth: res.windowWidth, 
  winHeight: res.windowHeight 
 }); 
 } 
 
 }); 
 }, 
 bindChange: function (e) { 
 
 var that = this; 
 that.setData({ currentTab: e.detail.current }); 
 
 }, 
 swichNav: function (e) { 
 
 var that = this; 
 
 if (this.data.currentTab === e.target.dataset.current) { 
 return false; 
 } else { 
 that.setData({ 
 currentTab: e.target.dataset.current 
 }) 
 } 
 } , 
 /** 
 * 页面相关事件处理函数--监听用户下拉动作 
 */ 
 onPullDownRefresh: function () { 
 
 }, 
 
 /** 
 * 页面上拉触底事件的处理函数 
 */ 
 onReachBottom: function () { 
 
 }, 
 
 /** 
 * 用户点击右上角分享 
 */ 
 onShareAppMessage: function () { 
 
 } 
}) 

以上是实现过程,总体上没什么难度。可以参考参考。

如果大家还想深入学习,可以点击两个精彩的专题:javascript选项卡操作方法汇总 jquery选项卡操作方法汇总

为大家推荐现在关注度比较高的微信小程序教程一篇:《微信小程序开发教程》小编为大家精心整理的,希望喜欢。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# 微信小程序  # 选项卡  # swiper  # 微信小程序开发之实现选项卡(窗口顶部TabBar)页面切换  # 微信小程序实现选项卡功能  # 微信小程序的tab选项卡的实现效果  # 微信小程序 选项卡的简单实例  # 微信小程序开发之选项卡(窗口底部TabBar)页面切换  # 微信小程序 tabs选项卡效果的实现  # 微信小程序实战之顶部导航栏(选项卡)(1)  # 微信小程序自定义组件实现tabs选项卡功能  # 微信小程序实现选项卡的简单实例  # 微信小程序实现选项卡的方法  # 操作方法  # 周期函数  # 较高  # 还想  # 小编  # 总体上  # 大家多多  # 程序开发  # 卡在  # 实现了  # 加载  # 没什么  # 触底  # winHeight  # height  # px  # bindtap  # current  # duration 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251811 】 【 AI营销90571


相关推荐: 智能起名网站制作软件有哪些,制作logo的软件?  php485函数参数是什么意思_php485各参数详细说明【介绍】  Android使用GridView实现日历的简单功能  Gemini手机端怎么发图片_Gemini手机端发图方法【步骤】  如何在不使用负向后查找的情况下匹配特定条件前的换行符  html文件怎么打开证书错误_https协议的html打开提示不安全【指南】  长沙做网站要多少钱,长沙国安网络怎么样?  Laravel如何使用Collections进行数据处理?(实用方法示例)  如何续费美橙建站之星域名及服务?  Laravel怎么实现支付功能_Laravel集成支付宝微信支付  深入理解Android中的xmlns:tools属性  如何在万网利用已有域名快速建站?  PHP 实现电台节目表的智能时间匹配与今日/明日轮播逻辑  Laravel如何使用Service Provider服务提供者_Laravel依赖注入与容器绑定【深度】  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  黑客入侵网站服务器的常见手法有哪些?  Python自动化办公教程_ExcelWordPDF批量处理案例  Android Socket接口实现即时通讯实例代码  Laravel如何与Vue.js集成_Laravel + Vue前后端分离项目搭建指南  如何为不同团队 ID 动态生成多个非值班状态按钮  如何快速搭建支持数据库操作的智能建站平台?  如何快速搭建自助建站会员专属系统?  在centOS 7安装mysql 5.7的详细教程  Laravel怎么发送邮件_Laravel Mail类SMTP配置教程  Laravel 419 page expired怎么解决_Laravel CSRF令牌过期处理  如何快速搭建高效服务器建站系统?  Bootstrap整体框架之CSS12栅格系统  北京的网站制作公司有哪些,哪个视频网站最好?  如何登录建站主机?访问步骤全解析  如何在云虚拟主机上快速搭建个人网站?  如何在万网自助建站平台快速创建网站?  如何快速生成凡客建站的专业级图册?  如何在沈阳梯子盘古建站优化SEO排名与功能模块?  uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址  JavaScript常见的五种数组去重的方式  如何在腾讯云服务器上快速搭建个人网站?  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  Laravel Blade模板引擎语法_Laravel Blade布局继承用法  php中::能调用final静态方法吗_final修饰静态方法调用规则【解答】  VIVO手机上del键无效OnKeyListener不响应的原因及解决方法  javascript事件捕获机制【深入分析IE和DOM中的事件模型】  ,怎么在广州志愿者网站注册?  JavaScript数据类型有哪些_如何准确判断一个变量的类型  图册素材网站设计制作软件,图册的导出方式有几种?  Laravel如何为API编写文档_Laravel API文档生成与维护方法  Laravel的路由模型绑定怎么用_Laravel Route Model Binding简化控制器逻辑  手机网站制作与建设方案,手机网站如何建设?  Laravel集合Collection怎么用_Laravel集合常用函数详解  绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信  如何在七牛云存储上搭建网站并设置自定义域名?