我找到了一个很棒的html截断库truncate.js,它可以处理我99%的需求.但是我面临着一个棘手的问题.我有一个要求,要求在一系列帖子的特定行数的末尾放置"显示更多"...这个库可以实现一个文本块...但是当涉及多行文本显示时更多的位置不正确.
我已经做了plunker来证明这个问题.所有我想要的是能够更出现了文本的坐在同一页上的块以同样的方式榜眼秀在多行文字相同的位置.
我的第一个尝试是在truncateNestedNodeEnd函数中添加prev()
if ($clipNode.length) {
if ($.inArray(element.tagName.toLowerCase(), BLOCK_TAGS) >= 0) {
// Certain elements like <li> should not be appended to.
$element.after($clipNode);
}
else
{
//edited this line to add prev()
//$element.append($clipNode)
$element.prev().append($clipNode);
}
}`
Run Code Online (Sandbox Code Playgroud)
这给了我想要的多行文本,但它打破了文本块的原始功能,如plunker中所示.如何使这个功能适用于这两种情况.当这两个帖子坐在同一页面上时,我仍然希望显示更多显示在黄色部分.