微信小程序实现tab点击切换

本文实例为大家分享了微信小程序无滑动效果的tab点击切换的具体代码,供大家参考,具体内容如下

<!--pages/dingdan/dingdan.wxml-->
<view class="body">
  <view class="swiper-tab">
    <view wx:for="{{tabList}}" wx:key="index" catchtap="change" class="{{page==index?'selected-menu':'unselect-menu'}}" data-pageid="{{index}}">{{item.title}}({{item.num}})
      <hr class="{{page==index?'selected-line':'unselect-line'}}" />
    </view>
  </view>

  <view class="view-Content">
    <view wx:for="{{tabList}}" wx:key="index" class="{{page==index?'show tabCon':'hidden tabCon'}}">
      <view class="content">
        <text>暂无订单{{index}}</text>
      </view>
    </view>
  </view>

</view>
/* pages/dingdan/dingdan.wxss */
page {
  width: 100%;
  height: 100%;
  overflow: hidden;
  /* background: pink; */
}

.body {
  height: 100%;
  /* background: hotpink; */
  display: flex;
  flex-direction: column;
}

/* tab栏 */
.swiper-tab {
  width: 100%;
  height: 80rpx;
  text-align: center;
  display: flex;
  justify-content: space-between;
  background: white;
}

.selected-menu {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #ff5050;
  background: #fff;
  font-size: 32rpx;
  font-weight: bold;
  font-family: PingFang SC;
  font-weight: 400;
  width: 33%;
  height: 60rpx;
  line-height: 60rpx;
  opacity: 1;
  /* border-bottom: 2px solid #ff5050; */
  position: relative;
}

.unselect-menu {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 16px;
  font-family: PingFang SC;
  font-weight: 400;
  color: #4f4f50;
  width: 33%;
  height: 60rpx;
  line-height: 60rpx;
  background: #fff;
  opacity: 1;
  position: relative;
  /* border-radius: 34rpx; */
}

.selected-line {
  background: #ff5050;
  height: 4rpx;
  width: 90rpx;
  position: absolute;
  /* margin-top: 10rpx; */
  bottom: -18rpx;
  width: 60rpx;
}

/* 内容 */
.view-Content {
  flex: 1;
  overflow-y: auto;
  background-color: rgb(236, 236, 236);
}

.tabCon {
  height: 100%;
}

/* 展示隐藏 */
.show {
  display: block;
}

.hidden {
  display: none;
}
Page({

  /**
   * 页面的初始数据
   */
  data: {
    page: 0, // page:当前页--
    tabList: [{
      title: '菜单1',
      num: 0
    }, {
      title: '菜单2',
      num: 0
    }, {
      title: '菜单3',
      num: 0
    }],
  },

  // 切换tab
  change: function (event) {
    console.log('切换时会调用', event);
    var a = event.currentTarget.dataset.pageid
    this.setData({
      page: a,
    })
  },
  

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  },

})

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

(0)

相关推荐

  • 微信小程序自定义可滑动的tab切换

    本文实例为大家分享了微信小程序自定义tab切换(可滑动),供大家参考,具体内容如下 自定义tab切换(可滑动) <!--components/warn/warn.wxml--> <view class="menu">   <navigator wx:for="{{shouye}}" wx:key="index" bindtap="change" class="{{page==index?

  • Vue中tab栏切换的简单实现

    目录 一.效果展示 二.实现原理 三.css和h5的代码,获得最基本的样式 1.css 2.H5 这是没有在使用Vue书写前的样式 四.Vue部分 一.效果展示 二.实现原理 主体通过绑定事件,索引的利用,v-for的数组遍历,来实现的切换效果. 具体细节看代码段的解释,根据个人所需去了解一下,更多的是入门理解其中的细思. 三.css和h5的代码,获得最基本的样式 1.css 主体的布局根据个人的喜好,这里我只进行了简单的布局. 其中也用到了浮动,和清除浮动. 主要让展现的效果好看一些.具体样式

  • js实现tab栏切换制作

    本文实例为大家分享了js实现tab栏切换制作的具体代码,供大家参考,具体内容如下 效果: 思想: 1.点击每个tab时.要先用排他思想,使得所有li不加上背景,再让点击的tab加上某个类. 2.上面的tab与下面显示内容的页面是一一对应的.因此,可以使用自定义属性,使tab加上一个index索引,这样就能知道每次点击的是哪一个tab了. 3.最后仍然使用排他思想,当点击tab时,先让所有的内容都不显示,再让对应的内容进行显示. 代码: <!DOCTYPE html> <html lang

  • elementui中使用el-tabs切换实时更新数据

    目录 使用el-tabs切换实时更新数据 el-tabs切换确认 实现效果 相关知识 解决代码 解释 使用el-tabs切换实时更新数据 项目中使用el-tabs 发现会一次性把所有 tab 里的请求读完,之后进行 tab 切换,不再重新读取请求 想要实现切换 tab 能实时更新数据的要求 <el-tabs type="border-card" class="root" v-model="activeName" @tab-click=&qu

  • Blazor实现微信的Tab切换功能

    是否有小伙伴在使用tab的时候想进行滑动切换Tab? 并且有滑动左出左进,右出右进的效果 ,本文将讲解怎么在Blazor中去通过滑动切换Tab 本文中的UI组件使用的是MASA Blazor,您也可以是其他的UI框架,这个并不影响实际的运行效果,本文案例是兼容PC和Android的,演示效果是android中执行的,在PC中执行效果依然有效(亲测) 首先安装MASA Blazor 根据 MASA Blazor安装MASA Blazor 准备工作 创建 AppBar.razor文件 修改MainL

  • 微信小程序实现tab和swiper切换结合效果

    本文实例为大家分享了小程序实现tab和swiper切换效果展示的具体代码,供大家参考,具体内容如下 先上效果图: 实现代码如下: wxml页面 <scroll-view scroll-x="true" class="weui-navbar"> <block wx:for-items="{{tabs}}"> <view id="{{index}}" class="{{activeIndex

  • 微信小程序滚动Tab实现左右可滑动切换

     微信小程序滚动Tab实现左右可滑动切换 效果: 最终效果如上.问题: 1.tab标题总共8个,所以一屏无法全部显示. 2.tab内容区左右滑动切换时,tab标题随即做标记(active). 3.当active的标题不在当前屏显示时,要使其能显示到当前屏中. 一.wxml结构 tab标题因一排八个,所以使用 scroll-view组件,使其可横向滚动. tab内容可左右滑动切换,使用swiper组件实现 为了偷懒,所以数据都通过wx:for遍历重复出来. 说明: 1.设置data-current

  • 微信小程序实现tab左右切换效果

    本文实例为大家分享了微信小程序实现tab左右切换展示的具体代码,供大家参考,具体内容如下 分析 1.设置data-current属性用于:点击当前项时,通过点击事件swichNav中处理e.dataset.current取到点击的目标值. 2.swiper组件的current组件用于控制当前显示哪一页 3.swiper组件绑定change事件switchTab,通过e.detail.current拿到当前页 wxml: <view class="record-box"> &

  • 微信小程序实现tab页面切换功能

    效果图如下所示: wxml <scroll-view scroll-x="true" class="ip_tab_comtainer"> <view class="ip_tab_comtainer_padd"></view> <block wx:for="{{ips}}" wx:for-item="ip" wx:key="{{ip.id}}"&g

  • 微信小程序实现tab页面切换效果

    本文实例为大家分享了微信小程序实现tab页面切换的具体代码,供大家参考,具体内容如下 html 页面 <view class="bgwhite">     <scroll-view scroll-x="true">         <view class="width100 row nowrap">             <view class="f32 c666 p-tb-20 p-lr-3

  • 微信小程序实现tab切换效果

    微信小程序之tab切换效果,如图: 最近在学习微信小程序并把之前的公司app搬到小程序上,挑一些实现效果记录一下(主要是官方文档里没说的,毕竟官方文档只是介绍功能) .wxml代码: <view class="body"> <view class="nav bc_white"> <view class="{{selected?'red':'default'}}" bindtap="selected"

  • 10行代码实现微信小程序滑动tab切换

    本文实例为大家分享了微信小程序滑动tab切换展示的具体代码,供大家参考,具体内容如下 效果预览: js部分: Page({ data: { arr: [1,2,3,4,5,6,7,8], index: 1 }, onLoad: function (options) { this.setData({ childW: this.data.arr.length * 80 }); }, tabOn: function (e) { this.setData({ index: e.currentTarget

  • 微信小程序的tab选项卡的实现效果

    效果图,既可以点击切换,又可以滑动切换 .wxml <!--pages/detail/detail.wxml--> <view class="swiper-tab"> <view class="swiper-tab-item {{currentTab==0?'active':''}}" data-current="0" bindtap="clickTab">全部</view> &

  • 微信小程序自定义tab实现多层tab嵌套功能

    小程序最近是越来越火了-- 做小程序有一段时间了,总结一下项目中遇到的问题及解决办法吧. 项目中有个多 tab 嵌套的需求,进入程序主界面下面有两个 tab,进入A模块后,A模块最底下又有多个tab,每个tab上又嵌了2-4个不等的tab... 这种变态需求只能自定义tab了. 其实如果项目不是很复杂,没有多tab嵌套的需求,完全可以用小程序官方的 tabBar,方便快捷. 官方 tabBar 地址:https://developers.weixin.qq.... 一.Demo结构 先看效果图吧

  • 微信小程序外卖选购页实现切换分类与数量加减功能案例

    本文实例讲述了微信小程序外卖选购页实现切换分类与数量加减功能.分享给大家供大家参考,具体如下: 关于微信小程序外卖界面实现选购切换分类与数量加减功能开发步骤: 效果图 实现以下功能 一. 点击分类项,切换右边的食品,并高亮自身 这个实现比较简单,给一个states数组,用于记录每一项分类的状态,点击设为true,wxml渲染时三目运算判断即可. categoryStates = categoryStates.map(function (item, i) { if (index == i) { i

随机推荐