吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 526|回复: 8
收起左侧

[求助] VUE的内容折叠实现

  [复制链接]
小朋友呢 发表于 2024-7-8 16:28
就比如下图这样的,默认就显示一半内容,只有点击下面那个展开按钮才显示完整内容,这种效果在VUE里面有什么框架可以实现的。
微信截图_20240708162253.png

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

lucklys 发表于 2024-7-8 16:57
  max-height 不就行了
冰茶荼 发表于 2024-7-8 17:02
本帖最后由 冰茶荼 于 2024-7-8 17:04 编辑

手搓一个不就好了 封装一个指令 v-toggle="show" 这种  使用 Vue.directive
下面代码我没测试 不过大概就是这个意思

[JavaScript] 纯文本查看 复制代码
export default {
  update(el, binding, vnode) {
    const { value } = binding;
    if (value) {
      el.style.height = "400px";
      el.className += "my-hide";
    } else {
      el.removeAttribute("style");
    }
  },
};

然后再加一个全局样式

[CSS] 纯文本查看 复制代码
.my-hide {
  position: relative;
}

.my-hide::after {
  content: "";
  height: 200px;
  bottom: 0;
  width: 100%;
  left: 0;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
}


可以试一下

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
小朋友呢 + 1 + 1 用心讨论,共获提升!

查看全部评分

lucklys 发表于 2024-7-8 17:04
默认
  max-height: 140px;
  overflow: hidden;
  transition: max-height 0.7s ease;
点击后
  max-height: 2000px;

免费评分

参与人数 1热心值 +1 收起 理由
小朋友呢 + 1 用心讨论,共获提升!

查看全部评分

notproblem 发表于 2024-7-8 17:24
今天正好研究了一个实现思路,容器高度设置为100px,overfow: hidden; 然后加一个展开按钮在后面就行了。点击展开,移除高度和overflow样式
侃遍天下无二人 发表于 2024-7-8 18:56
我可是烦死这种东西了,往往还有个关注博主查看全文的条件
潇洒三叔 发表于 2024-7-8 20:05
简单一点就是固定高, 点击之后 height:auto,缺点 挡不住F12
爱吃鹅肉饭 发表于 2024-7-8 22:25
这个根本不需要用什么框架,html、css还有js就可以实现,原理就是设置初始高度,点击更多的按钮或者箭头以后,监听点击事件,修改对应容器的高度,控制样式即可
爱飞的猫 发表于 2024-7-9 03:03
这种效果在VUE里面有什么框架可以实现的。


右键审查元素,整个 HTML 结构复制粘贴过去就好了。

大概实现就是容器有最高高度限制,字节点超过高度后不显示。
点击展开按钮后将高度限制去除。

免费评分

参与人数 1吾爱币 +2 热心值 +1 收起 理由
小朋友呢 + 2 + 1 我很赞同!

查看全部评分

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 14:39

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表