微信小程序实现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 相关文章推荐
js确定对象类型方法
Mar 30 Javascript
php跨域调用json的例子
Nov 13 Javascript
Eclipse配置Javascript开发环境图文教程
Jan 29 Javascript
angularJS 入门基础
Feb 09 Javascript
js+html5通过canvas指定开始和结束点绘制线条的方法
Jun 05 Javascript
arguments对象验证函数的参数是否合法
Jun 26 Javascript
jQuery动态添加与删除tr行实例代码
Oct 18 Javascript
JS遍历对象属性的方法示例
Jan 10 Javascript
JavaScript实现的冒泡排序法及统计相邻数交换次数示例
Apr 26 Javascript
Vue filter格式化时间戳时间成标准日期格式的方法
Sep 16 Javascript
20个必会的JavaScript面试题(小结)
Jul 02 Javascript
vuex存储复杂参数(如对象数组等)刷新数据丢失的解决方法
Nov 05 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
关于zend studio 出现乱码问题的总结
2013/06/23 PHP
php中如何判断一个网页请求是ajax请求还是普通请求
2013/08/10 PHP
javascript 折半查找字符在数组中的位置(有序列表)
2010/12/09 Javascript
JS给超链接加确认对话框的方法
2015/02/24 Javascript
浅析jQuery Ajax通用js封装
2016/06/22 Javascript
关于微信jssdk实现多图片上传的一点心得分享
2016/12/13 Javascript
JS常见简单正则表达式验证功能小结【手机,地址,企业税号,金额,身份证等】
2017/01/22 Javascript
bootstrap实现二级下拉菜单效果
2017/11/23 Javascript
解决vue中修改export default中脚本报一大堆错的问题
2018/08/27 Javascript
利用JS响应式修改vue实现页面的input值
2019/09/02 Javascript
node.js +mongdb实现登录功能
2020/06/18 Javascript
微信小程序实现选项卡滑动切换
2020/10/22 Javascript
Python实现将16进制字符串转化为ascii字符的方法分析
2017/07/21 Python
Python自定义函数定义,参数,调用代码解析
2017/12/27 Python
使用python实现语音文件的特征提取方法
2019/01/09 Python
解决pycharm的Python console不能调试当前程序的问题
2019/01/20 Python
python3射线法判断点是否在多边形内
2019/06/28 Python
详解Ubuntu环境下部署Django+uwsgi+nginx总结
2020/04/02 Python
终于搞懂了Keras中multiloss的对应关系介绍
2020/06/22 Python
Python使用sys.exc_info()方法获取异常信息
2020/07/23 Python
Python如何获取文件路径/目录
2020/09/22 Python
CSS3 @media的基本用法总结
2019/09/10 HTML / CSS
HTML5 history新特性pushState、replaceState及两者的区别
2015/12/26 HTML / CSS
美国知名的网上鞋类及相关服装零售商:Shoes.com
2017/05/06 全球购物
正宗的澳大利亚Ugg靴子零售商:UGG Express
2020/04/19 全球购物
常用UNIX 命令(Linux的常用命令)
2013/07/10 面试题
高中毕业自我鉴定
2013/12/19 职场文书
大学生职业生涯规划范文
2014/01/22 职场文书
大家检讨书5000字
2014/02/03 职场文书
80后职场人的职业生涯规划
2014/03/08 职场文书
客户答谢会活动方案
2014/08/31 职场文书
综合素质自我评价怎么写
2014/09/14 职场文书
公民代理授权委托书
2014/09/24 职场文书
小学生安全保证书
2015/05/09 职场文书
会议简讯范文
2015/07/20 职场文书
Vue自定义铃声提示音组件的实现
2022/01/22 Vue.js