微信小程序实现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 相关文章推荐
表单验证的完整应用案例探讨
Mar 29 Javascript
JS实现简单的Canvas画图实例
Jul 04 Javascript
javascript cookie的简单应用
Feb 24 Javascript
javascript基础练习之翻转字符串与回文
Feb 20 Javascript
JS排序算法之冒泡排序,选择排序与插入排序实例分析
Dec 13 Javascript
详解vue2.0监听属性的使用心得及搭配计算属性的使用
Jul 18 Javascript
JS编写兼容IE6,7,8浏览器无缝自动轮播
Oct 12 Javascript
vue实现的树形结构加多选框示例
Feb 02 Javascript
微信小程序按顺序同步执行的两种方式
Dec 20 Javascript
浅析vue-router中params和query的区别
Dec 24 Javascript
webpack proxy 使用(代理的使用)
Jan 10 Javascript
在nuxt中使用路由重定向的实例
Nov 06 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
ADODB的数据库封包程序库
2006/12/31 PHP
从MySQL数据库表中取出随机数据的代码
2007/09/05 PHP
在PHP中使用redis
2013/11/04 PHP
smarty实现多级分类的方法
2014/12/05 PHP
php中通过eval实现字符串格式的计算公式
2017/03/18 PHP
PHP使用数组实现矩阵数学运算的方法示例
2017/05/29 PHP
YII2框架中behavior行为的理解与使用方法示例
2020/03/13 PHP
javascript实现的使用方向键控制光标在table单元格中切换
2010/11/17 Javascript
JavaScript中的变量声明早于赋值分析
2012/03/01 Javascript
Javascript alert消息换行的方法
2013/08/07 Javascript
js实现按钮加背景图片常用方法
2014/11/01 Javascript
JavaScript点击按钮后弹出透明浮动层的方法
2015/05/11 Javascript
详解Angular开发中的登陆与身份验证
2016/07/27 Javascript
JavaScript登录验证码的实现
2016/10/27 Javascript
JS获取鼠标位置距浏览器窗口距离的方法示例
2017/04/11 Javascript
JavaScript实现的选择排序算法实例分析
2017/04/14 Javascript
详解webpack2+node+react+babel实现热加载(hmr)
2017/08/24 Javascript
javascript获取指定区间范围随机数的方法
2017/09/08 Javascript
node+express框架中连接使用mysql(经验总结)
2018/11/10 Javascript
Javascript基于OOP实实现探测器功能代码实例
2020/08/26 Javascript
Pycharm学习教程(7)虚拟机VM的配置教程
2017/05/04 Python
python os用法总结
2018/06/08 Python
Django框架实现的分页demo示例
2019/05/25 Python
python中for循环把字符串或者字典添加到列表的方法
2019/07/20 Python
如何定义TensorFlow输入节点
2020/01/23 Python
python实现学生信息管理系统源码
2021/02/22 Python
师德学习感言
2014/01/31 职场文书
幼儿园教师获奖感言
2014/03/11 职场文书
城管执法人员纪律作风整顿思想汇报
2014/09/13 职场文书
2014年学校禁毒工作总结
2014/12/23 职场文书
2015年老干部工作总结
2015/04/23 职场文书
培训心得体会怎么写
2016/01/25 职场文书
2016年幼儿园教研活动总结
2016/04/05 职场文书
php引用传递
2021/04/01 PHP
排查并解决Oracle sysaux表空间异常增长
2022/04/20 Oracle
SQL使用复合索引实现数据库查询的优化
2022/05/25 SQL Server