微信小程序实现swiper切换卡内嵌滚动条不显示的方法示例


Posted in Javascript onDecember 20, 2018

本文实例讲述了微信小程序实现swiper切换卡内嵌滚动条不显示的方法。分享给大家供大家参考,具体如下:

微信小程序实现swiper切换卡内嵌滚动条不显示的方法示例

index.wxml文件:

<view class="swiper-tab">
 <view class="swiper-tab-item {{currentTab==0 ? 'on' : ''}}" data-current="0" bindtap="swichNav">为你推荐</view>
 <view class="swiper-tab-item {{currentTab==1 ? 'on' : ''}}" data-current="1" bindtap="swichNav">新品上架</view>
 <view class="swiper-tab-item {{currentTab==2 ? 'on' : ''}}" data-current="2" bindtap="swichNav">最热商品</view>
</view>
<swiper current="{{currentTab}}" class="swiper-box" duration="300" style="height:{{clientHeight?clientHeight-'40'+'px':'auto'}}" bindchange="bindChange" >
 <swiper-item>
 <scroll-view scroll-y="{{true}}" style="height: {{clientHeight?clientHeight+'px':'auto'}}">
  <view style='height:200px'>为你推荐</view>
  <view style='height:200px'>为你推荐</view>
  <view style='height:200px'>为你推荐</view>
  <view style='height:200px'>为你推荐</view>
  <view style='height:200px'>为你推荐</view>
 </scroll-view>
 </swiper-item>
 <swiper-item>
  <view>新品上架</view>
 </swiper-item>
 <swiper-item>
  <view>最热商品</view>
 </swiper-item>
</swiper>

index.wxss文件:

/**index.wxss**/
.userinfo {
 display: flex;
 flex-direction: column;
 align-items: center;
}
.userinfo-avatar {
 width: 128rpx;
 height: 128rpx;
 margin: 20rpx;
 border-radius: 50%;
}
.userinfo-nickname {
 color: #aaa;
}
.usermotto {
 margin-top: 200px;
}
.swiper-tab {
 width: 100%;
 text-align: center;
 line-height: 80rpx;
 margin-top:10rpx;
 margin-bottom: 20rpx;
}
.swiper-tab-item {
 font-size: 30rpx;
 display: inline-block;
 width: 33.33%;
 color: #666;
}
.on {
 color: #FEA611;
 border-bottom: 5rpx solid #FEA611;
}
.swiper-box {
 display: block;
 height: 100%;
 width: 100%;
 overflow: hidden;
}
.swiper-box view {
 text-align: center;
}

index.js文件:

//获取应用实例
const app = getApp()
Page({
 data: {
  motto: 'Hello World',
  userInfo: {},
  hasUserInfo: false,
  canIUse: wx.canIUse('button.open-type.getUserInfo'),
  clientWidth: 0,
  clientHeight: 0,
  // tab切换
  currentTab: 0
 },
 //事件处理函数
 bindViewTap: function () {
  wx.navigateTo({
   url: '../logs/logs'
  })
 },
 onLoad: function () {
  var that = this;
  wx.getSystemInfo({
   success: function (res) {
    that.setData({
     clientHeight: res.windowHeight
    });
   }
  });
  if (app.globalData.userInfo) {
   this.setData({
    userInfo: app.globalData.userInfo,
    hasUserInfo: true
   })
  } else if (this.data.canIUse) {
   // 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回
   // 所以此处加入 callback 以防止这种情况
   app.userInfoReadyCallback = res => {
    this.setData({
     userInfo: res.userInfo,
     hasUserInfo: true
    })
   }
  } else {
   // 在没有 open-type=getUserInfo 版本的兼容处理
   wx.getUserInfo({
    success: res => {
     app.globalData.userInfo = res.userInfo
     this.setData({
      userInfo: res.userInfo,
      hasUserInfo: true
     })
    }
   })
  }
 },
 getUserInfo: function (e) {
  console.log(e)
  app.globalData.userInfo = e.detail.userInfo
  this.setData({
   userInfo: e.detail.userInfo,
   hasUserInfo: true
  })
 },
 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
   })
  }
 }
})

希望本文所述对大家微信小程序开发有所帮助。

Javascript 相关文章推荐
JQuery实现带排序功能的权限选择实例
May 18 Javascript
实例讲解避免javascript冲突的方法
Jan 03 Javascript
jQuery快速实现商品数量加减的方法
Feb 06 Javascript
微信小程序点击控件修改样式实例详解
Jul 07 Javascript
基于bootstrop常用类总结(推荐)
Sep 11 Javascript
详解Vue基于 Nuxt.js 实现服务端渲染(SSR)
Apr 05 Javascript
小程序关于请求同步的总结
May 05 Javascript
vue element upload组件 file-list的动态绑定实现
Oct 11 Javascript
vue组件传值的实现方式小结【三种方式】
Feb 05 Javascript
Vue父组件监听子组件生命周期
Sep 03 Javascript
Vue+Element UI实现概要小弹窗的全过程
May 30 Vue.js
Node与Python 双向通信的实现代码
Jul 16 Javascript
微信小程序实现的点击按钮 弹出底部上拉菜单功能示例
Dec 20 #Javascript
vue+Vue Router多级侧导航切换路由(页面)的实现代码
Dec 20 #Javascript
微信小程序module.exports模块化操作实例浅析
Dec 20 #Javascript
JavaScript类的继承操作实例总结
Dec 20 #Javascript
vue返回上一页面时回到原先滚动的位置的方法
Dec 20 #Javascript
详解Vue.js自定义tipOnce指令用法实例
Dec 19 #Javascript
JavaScript创建对象方式总结【工厂模式、构造函数模式、原型模式等】
Dec 19 #Javascript
You might like
php利用header函数实现文件下载时直接提示保存
2009/11/12 PHP
PHP大批量数据操作时临时调整内存与执行时间的方法
2011/04/20 PHP
php实现Linux服务器木马排查及加固功能
2014/12/29 PHP
javascript 复杂的嵌套环境中输出单引号和双引号
2009/05/26 Javascript
IE6不能修改NAME问题的解决方法
2010/09/03 Javascript
按钮接受回车事件的三种实现方法
2014/06/06 Javascript
Node.js入门教程:在windows和Linux上安装配置Node.js图文教程
2014/08/14 Javascript
JavaScript更改字符串的大小写
2015/05/07 Javascript
Django+Vue.js搭建前后端分离项目的示例
2017/08/07 Javascript
Node调用Java的示例代码
2017/09/20 Javascript
bootstrap下拉框动态赋值方法
2018/08/10 Javascript
Vue 页面状态保持页面间数据传输的一种方法(推荐)
2018/11/01 Javascript
Vue组件之单向数据流的解决方法
2018/11/10 Javascript
[04:44]DOTA2 2017全国高校联赛视频回顾
2017/08/21 DOTA
python操作gmail实例
2015/01/14 Python
教你用Type Hint提高Python程序开发效率
2016/08/08 Python
Django中的Model操作表的实现
2018/07/24 Python
利用python实现简易版的贪吃蛇游戏(面向python小白)
2018/12/30 Python
Django Python 获取请求头信息Content-Range的方法
2019/08/06 Python
django项目简单调取百度翻译接口的方法
2019/08/06 Python
python多线程与多进程及其区别详解
2019/08/08 Python
关于tensorflow softmax函数用法解析
2020/06/30 Python
如何在Win10系统使用Python3连接Hive
2020/10/15 Python
python 带时区的日期格式化操作
2020/10/23 Python
英国标志性奢侈品牌:Burberry
2016/07/28 全球购物
毕业生自荐信
2013/12/14 职场文书
给领导的致歉信范文
2014/01/13 职场文书
升职感谢信
2015/01/22 职场文书
大学生国家助学金感谢信
2015/01/23 职场文书
回复函格式及范文
2015/07/14 职场文书
学术会议领导致辞
2015/07/29 职场文书
情况说明书怎么写
2015/10/08 职场文书
解决numpy和torch数据类型转化的问题
2021/05/23 Python
Mybatis-plus在项目中的简单应用
2021/07/01 Java/Android
golang实现一个简单的websocket聊天室功能
2021/10/05 Golang
SQL Server数据库查询出现阻塞之性能调优
2022/04/10 SQL Server