资讯专栏INFORMATION COLUMN

小程序TAB列表切换内容动态变化,scrollview高度根据内容动态获取

miya / 1615人阅读

摘要:样式代码切换导航超出自动隐藏文字隐藏后添加省略号强制不换行代码切换导航条切换事件进入页面显示正在加载的图标正在加载中获取到数据后隐藏正在加载图标获取的数据截取数组下标的数据获取系统信息设备的高度等于内容的高度成功后的截图

滑动tab选项卡
一、在小程序里面tab选项卡是用的是自带的swiper组件,下面直接上代码
    
  
    运动专区
    美食专区
  
  
  
  
    
      
      
        
          
            {{original}}
            
              
            
            
                {{item.addtime}}
                {{item.title}}
                
                  {{originalContent}}
                
            
          
        
      
     
  


    
      
        
          
            
              {{original}}
              
                
              
              
                  {{item.addtime}}
                  {{item.title}}
                  
                    {{originalContent}}
                  
              
            
          
        
       
    
  
ps:大家都知道小程序是不能操作DOM的,所以这里用getSystemInfo获取设备高度,scrollview在这里是一个内嵌的框架,列表在框架内滚动,它的高度其实就是屏幕的高度,不是里边列表项目的高度,
所以这里设置max-height等都是无效的。



样式代码:

.container{
  width:100%;
  height: 100%; 
  background:#eee;
}

/*tab切换导航 */
.tab{
  width: 100%;
  color:#666666;
  height: 70rpx;
  font-size:28rpx;
  display: inline-block;
  text-align: center;
  background: #fff;
}
.tab-list{
  height: 70rpx;
  line-height: 70rpx;
  width: 50%;
  display: inline-block;
  z-index: 1000;
}
.active{
  border-bottom:4rpx solid #FD9D80;
}
.swiper-box{
  width: 100%;
  max-height:9999px; 
  display: block;
}


.video-detail-list{
  margin-top:16rpx;
  width:100%;
  background: #fff;

}
.video-detail-list .original-name{
   height: 80rpx;
   line-height: 80rpx; 
  text-align: center;
  display: block;
  font-size:28rpx;
}
.original-name{
  color:#999999;
}
.original-video{
  text-align: center;
}
.original-video video{
  width: 640rpx;
}
.original-video video{
  border-radius:16rpx;
}
.original-video-explain{
  width: 640rpx;
  margin-left:50rpx;
}
.original-video-date{
  font-size:28rpx;
  color:#6C6C6C;
}
.original-video-date text{
  display: inline-block;
}
.original-video-name{
  text-align: center;
  width: 55%;
  margin-top:8rpx;
  float:right;
  font-size:28rpx;
  color:#6C6C6C;
  overflow: hidden;  /* 超出自动隐藏 */
  text-overflow:ellipsis;  /* 文字隐藏后添加省略号 */
  white-space:nowrap;    /*  强制不换行 */
}
.original-video-detail{
  color:#A1A1A1;
  height: 30rpx;
  font-size:20rpx;
  /* margin-top:-10rpx; */
  
}
.original-video-detail text{
    width: 100%;
    display: -webkit-box;
    word-break: break-all;
    -webkit-box-orient: vertical;
    -webkit-line-clamp:3;
    overflow: hidden;
    text-overflow:ellipsis;
    color:#666;
}

js代码:

var videoUrl = "http://t.jingduhealth.com/index/xcsvideo"
var app = getApp()
Page({
  data: {
    true:true,
    video:[],
    winWidth: 0,
    winHeight: 0, 
    currentTab: 0,  // tab切换 
  },
  //tab导航条切换事件
  bindChange:function(e){
    var that = this;
    that.setData({
      currentTab: e.detail.current
    })
  },
  switchNav:function(e){
    var that = this;
    if (this.data.currentTab === e.target.dataset.current){
      return false;
    }else{
      that.setData({
        currentTab: e.target.dataset.current
      })
    }
  },
  onLoad: function () {
    var that = this;
    //进入页面显示正在加载的图标
    wx.showToast({
      title: "正在加载中...",
      icon: "loading",
      duration: 10000
    })
    wx.request({
      url:videoUrl,
      data:{},
      header:{
        "ContentType":"application/json"
      },
      success: function (res){
        //获取到数据后隐藏正在加载图标
        wx.hideLoading();
        console.log(res.data)
        that.setData({
            video:res.data.slice(0,2)  //获取的数据截取数组下标0-2的数据
        })
      }
    })

    //获取系统信息
    wx.getSystemInfo({
      success:function(res){
        that.setData({
          clientHeight: res.windowHeight   //设备的高度等于scroll-view内容的高度
        })
      }
    })
  }
})
 
成功后的截图

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/88666.html

相关文章

  • Android 实现锚点定位

    摘要:原文链接相信做前端的都做过页面锚点定位的功能,通过去设置页面内锚点定位跳转。本篇文章就使用来实现锚点定位的功能。写到这里,的锚点定位成型了,在实际项目中,我们还可以使用来完成同样的效果,后续的话会带来这样的文章。 原文链接:https://mp.weixin.qq.com/s/EYyTBtM9qCdmB9nlDEF-3w 相信做前端的都做过页面锚点定位的功能,通过 去设置页面内锚点定...

    dendoink 评论0 收藏0

发表评论

0条评论

miya

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<