【发布时间】:2021-05-14 02:44:20
【问题描述】:
我是一个程序初学者,我现在正在自学! 首先非常抱歉我的英文不是很好,我会尽量完整的表达出来,谢谢。
我的问题是,我正在研究一种限制范围内单词数量的效果,如果单词数量超过该数量,它将隐藏并显示一个可以点击进入的显示更多超链接,但是如何我在末尾添加了链接而不是字符串?
$(function(){
let len = 50;
$(".demo").each(function(i){
if($(this).text().length>len){
$(this).attr("title",$(this).text());
let text=$(this).text().substring(0,len-1)+" show more"
$(this).text(text);
}
});
});
.box {
width: 300px;
padding: 10px;
border: #ef5c28 2px solid;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="box">
<p class="demo">Lorem ipsum dolor sit amet consectetur adipisicing elit. Facere culpa expedita nam consequuntur, dignissimos explicabo quasi aperiam repudiandae quia saepe! Eaque, neque amet incidunt nesciunt dicta suscipit eveniet at, dolorem voluptates similique repudiandae esse velit ea voluptatibus vitae obcaecati ducimus itaque odit mollitia facere assumenda possimus aliquid consequuntur. Recusandae earum maiores unde adipisci quia, facere rem quos nobis explicabo expedita reiciendis deleniti consequuntur inventore hic rerum, delectus nostrum reprehenderit eius fugit aliquam dolores. Ab impedit quidem dignissimos, facere distinctio tempora explicabo, magnam nisi vel animi iusto eligendi. Vitae nostrum modi nam adipisci esse, quasi pariatur consequuntur soluta, deserunt qui cupiditate repudiandae provident nemo fugit nesciunt accusantium, aut sed ad? Repudiandae fuga veritatis aliquid vero voluptates porro, quis corrupti accusantium exercitationem molestiae nemo obcaecati? Obcaecati in quam natus quos eius enim itaque fugit hic distinctio quis maiores, laborum provident saepe ipsa reiciendis illum dolores nesciunt, ratione voluptatem repellendus, repellat omnis quae.</p>
</div>
【问题讨论】:
-
“隐藏”和“显示”不应是链接(锚点)。这是对该元素的滥用。它们应该是按钮。你可以随心所欲地设计它们。
-
既然你正在学习,这里是我的建议:1)创建一个函数来检查文档加载时的字数 2)创建一个函数来添加一个 html 按钮/跨度/任何东西到你所在的元素想要显示“更多”链接 3)向按钮/跨度/锚点的点击事件添加一个函数 4)添加/删除,在点击函数内切换 div 的类 5)写一点 CSS,它显示/隐藏按钮并根据需要更改容器高度/换行文本一一解决上述所有语句。
-
希望红框的字数超过50个,会有危险。我可以点击 Show More 的链接。谢谢。
-
您是指“这里有四个词”中的单词 = 4 个词,还是“abc”中的字符 = 3 个字符?
标签: javascript html jquery css