微信小程序实现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 相关文章推荐
ExtJS Grid使用SimpleStore、多选框的方法
Nov 20 Javascript
JQUERY操作JSON实例代码
Feb 09 Javascript
学习从实践开始之jQuery插件开发 菜单插件开发
May 03 Javascript
javascript页面加载完执行事件代码
Feb 11 Javascript
分析了一下JQuery中的extend方法实现原理
Feb 27 Javascript
JavaScript将字符串转换成字符编码列表的方法
Mar 19 Javascript
第一次接触Bootstrap框架
Oct 24 Javascript
jquery validation验证表单插件
Jan 07 Javascript
jQuery给表格添加分页效果
Mar 02 Javascript
解决JQuery的ajax函数执行失败alert函数弹框一闪而过问题
Apr 10 jQuery
JS实现表单中点击小眼睛显示隐藏密码框中的密码
Apr 13 Javascript
js实现鼠标滑动到某个div禁止滚动
Sep 17 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引擎的发展 [15]
2006/10/09 PHP
PHP+MySQL 手工注入语句大全 推荐
2009/10/30 PHP
三个类概括PHP的五种设计模式
2012/09/05 PHP
php计算程序运行时间的简单例子分享
2014/05/10 PHP
WordPress中转义HTML与过滤链接的相关PHP函数使用解析
2015/12/22 PHP
PHP实现的简单操作SQLite数据库类与用法示例
2017/06/19 PHP
Javascript 自适应高度的Tab选项卡
2011/04/05 Javascript
jquery学习笔记 用jquery实现无刷新登录
2011/08/08 Javascript
js如何获取file控件的完整路径具体实现代码
2013/05/15 Javascript
Bootstrap嵌入jqGrid,使你的table牛逼起来
2016/05/05 Javascript
window.open不被拦截的简单实现代码(推荐)
2016/08/04 Javascript
Angular 常用指令实例总结整理
2016/12/13 Javascript
JS身份证信息验证正则表达式
2017/06/12 Javascript
利用jquery去掉时光轴头尾部线条的方法实例
2017/06/16 jQuery
javascript 中select框触发事件过程的分析
2017/08/01 Javascript
Mac 安装 nodejs方法(图文详细步骤)
2017/10/30 NodeJs
vue项目设置scrollTop不起作用(总结)
2018/12/21 Javascript
EasyUI 数据表格datagrid列自适应内容宽度的实现
2019/07/18 Javascript
python dict remove数组删除(del,pop)
2013/03/24 Python
Python中实现对list做减法操作介绍
2015/01/09 Python
Linux 发邮件磁盘空间监控(python)
2016/04/23 Python
python中Matplotlib实现绘制3D图的示例代码
2017/09/04 Python
python中正则表达式的使用方法
2018/02/25 Python
Python中一些不为人知的基础技巧总结
2018/05/19 Python
Python实现base64编码的图片保存到本地功能示例
2018/06/22 Python
Windows下将Python文件打包成.EXE可执行文件的方法
2018/08/03 Python
python视频按帧截取图片工具
2019/07/23 Python
python线程安全及多进程多线程实现方法详解
2019/09/27 Python
Python超越函数积分运算以及绘图实现代码
2019/11/20 Python
DataFrame 数据合并实现(merge,join,concat)
2020/06/14 Python
日本一家专门经营各种箱包的大型网站:Traveler Store
2016/08/03 全球购物
电焊工工作岗位职责
2014/02/06 职场文书
公司应聘自荐书
2014/06/14 职场文书
网吧温馨提示
2015/07/17 职场文书
2015年主婚人婚礼致辞
2015/07/28 职场文书
Docker安装MySql8并远程访问的实现
2022/07/07 Servers