uniapp实现消息展示收起

									<view class="contents" :class="{'is':selected==index}" @click="toggle(index)"
										v-if="item.txt">
										{{item.txt}}
										<text class="unfold" v-if="(getChartLength(item.txt)>110&&(!item.flag))">...展开</text>
										<text class="pack" v-if="item.flag">收起</text>
									</view>
selected:-1,
commentList: [{
					txt: "这个文档看完收益很多。这个文档看完收这个文档看完收益很多。这个文档看完收这个文档看完收益很多。这个文档看完收这个文档看完收益很多。"
				}, {
					txt: "这个文档看完收益很多"
				}]





			toggle(index) {
				this.commentList[index].flag = !this.commentList[index].flag;
				if (this.commentList[index].flag) {
					this.selected = index;
					console.log(this.selected);
				} else {
					this.selected = -1;
				}
			},

           //通过字节长度判断何时显示 展开
		   getChartLength(value){            
		   	 var w = 0;             
		    	//length 获取字数数,不区分汉子和英文           
		   	  for (var i=0; i<value.length; i++) {                
		    		 	 //charCodeAt()获取字符串中某一个字符的编码                
		       		var c = value.charCodeAt(i);                
		       		 //单字节加1               
		          	if ((c >= 0x0001 && c <= 0x007e) || (0xff60<=c && c<=0xff9f)) {     
		                       w++;                
		                  } else {
		                       w+=2;               
		           		 }            
		                 }       
		                    return w          // w为value的字节长度   
		    },




					.contents {
						position: relative;
						font-size: 26rpx;
						font-family: PingFang SC;
						font-weight: 500;
						color: #B6B6B7;
						line-height: 39rpx;
						margin-top: 31rpx;
						white-space: pre-wrap;
						text-overflow: -o-ellipsis-lastline;
						overflow: hidden;
						text-overflow: ellipsis;
						display: -webkit-box;
						-webkit-line-clamp: 3;
						-webkit-box-orient: vertical;
					}

	.is {
		-webkit-line-clamp: 100 !important;
	}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值