Javascript jQuery插件";readmore";,修剪文本而不剪切单词
我正在使用修剪长文本并添加“查看更多”链接以显示所有文本 我很想避免切字,我怎么能做到呢 如果限值是35,不要削减w 但是Javascript jQuery插件";readmore";,修剪文本而不剪切单词,javascript,jquery,substring,trim,Javascript,Jquery,Substring,Trim,我正在使用修剪长文本并添加“查看更多”链接以显示所有文本 我很想避免切字,我怎么能做到呢 如果限值是35,不要削减w 但是 如果限制是35,不要删掉这个词。。。(在本例中,在38处进行修剪,然后在末尾显示第39条隐藏的文本。您可以更改该插件中的缩写功能,如下所示: function abridge(elem) { var opts = elem.data("opts"); var txt = elem.html(); var len = opts.substr_len; var
如果限制是35,不要删掉这个词。。。(在本例中,在38处进行修剪,然后在末尾显示第39条隐藏的文本。您可以更改该插件中的
缩写功能,如下所示:
function abridge(elem) {
var opts = elem.data("opts");
var txt = elem.html();
var len = opts.substr_len;
var dots = "<span>" + opts.ellipses + "</span>";
var charAtLen = txt.substr(len, 1);
while (len < txt.length && !/\s/.test(charAtLen)) {
len++;
charAtLen = txt.substr(len, 1);
}
var shown = txt.substring(0, len) + dots;
var hidden = '<span class="hidden" style="display:none;">' + txt.substring(len, txt.length) + '</span>';
elem.html(shown + hidden);
}
功能摘要(elem){
var opts=要素数据(“opts”);
var txt=elem.html();
var len=opts.substr_len;
var dots=“”+选择椭圆+”;
var charAtLen=txt.substr(len,1);
while(len
…它将按照您的意愿运行。您可能希望添加一个选项来关闭和打开此功能,但我将由您决定
不要这样做:
$elem.readmore({
substr_len: 35
});
你可以这样做
$elem.readmore({
substr_len: $elem.text().substr(0, 35).lastIndexOf(" ")
});
我们要做的是进入索引35之前的最新空间。
当然,35可以是可变的。你也可以把它放到一个函数中去重用它
希望这有帮助我刚刚收集了关于这个主题的信息,在您的帮助和其他相关帖子的帮助下,我写了以下内容:
我不知道是否有更简单的方法,但这很好!谢谢mVChr