Django中如何实现长文本的折叠

文章目录

题目

Django中如何实现长文本的折叠

示意图

在这里插入图片描述

方法

  • 第一步:html
<div class="item">
<div class="time">2022-1-1</div>
<div class="title">substring的介绍?</div>
<div class="favcontent">1.substring 方法 定义和用法substring 方法用于提取字符串中介于两个指定下标之间的字符。 语法stringObject.substring(start,stop)参数 描述start 必需。一个非负的整数, 规定要提取的子串的第一个字符在 stringObject 中的位置。stop 可选。一个非负的整数, 比要提取的子串的最后一个字符在 stringObject 中的位置多 1。如果省略该参数,那么返回的 子串会一直到字符串的结尾。返回值一个新的字符串,该字符串值包含stringObject 的一个子字符串, 其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。说明substring 方法返回的子串包 括 start 处的字符,但不包括 end 处的字符。如果 start 与 end 相等,那么该方法返回的就是一个空串(即长度 为 0 的字符串)。</div>
</div>
  • 第二步:css
折叠之后的样式
.favcontent {
    font-size: 16px;
    color: #555;
    padding-bottom: 10px;
    letter-spacing: 1px;
    line-height: 26px;
}

折叠之前的样式
.favcontent2 {
    font-size: 16px;
    color: #555;
    padding-bottom: 10px;
    letter-spacing: 1px;
    line-height: 26px;
    display: none;
}

【展开|折叠】样式
.a-text {
    font-size: 16px;
    color: #337ab7;
    cursor: pointer;
}

取消a标签样式
.favcontent a {
    text-decoration: none;
}

鼠标停留【展开|折叠】时的样式
.a-text:hover {
    font-weight: bold;
}


  • 第三步:js

<script src="https://cdn.bootcss.com/jquery/2.1.2/jquery.min.js"></script>
<script type="text/javascript">
    $(function() {
        text_foled('.favcontent', 150);
    });

    function text_foled(clas, num) {
        var num = num;
        当点击展开时执行showText函数
        var a = $("<a></a>").on('click', showText).addClass('a-text').text("【展开】");
        当点击折叠时执行showText函数
        var b = $("<a></a>").on('click', showText).addClass('a-text').text("【折叠】");
        展开时的样式,一开始时p的display为隐藏
        var p = $("<p></p>").addClass('favcontent2');
        获取全部内容
        var str = $(clas).text();
        $(clas).after(p);
        if (str.length > num) {
            var text = str.substring(0, num) + "...";
            $(clas).html(text).append(a);
        }
        $('.favcontent2').html(str).append(b);

        function showText() {
            $(this).parent().hide().siblings().show();
        }
    }
</script>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

365JHWZGo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值