javascript - jquery - 限制div中的单词数

标签 javascript jquery

我有以下运行良好的代码:

HTML:

<div data-max-characters="120">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Mollitia ea esse accusantium nobis adipisci dignissimos? Vel esse facilis perferendis ipsa? Voluptatem earum, ratione! Consequuntur et assumenda minus, aut temporibus alias.</div>

<p data-max-characters="210">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Mollitia ea esse accusantium nobis adipisci dignissimos? Vel esse facilis perferendis ipsa? Voluptatem earum, ratione! Consequuntur et assumenda minus, aut temporibus alias.</p>

jquery:

$("div, p").each(function() {
   var textMaxChar = $(this).attr('data-max-characters');

   length = $(this).text().length;
   if(length > textMaxChar) {
       $(this).text($(this).text().substr(0, textMaxChar) + '...');
   }
});

但我想用有限的词来表达同样的意思。有人可以帮我吗?

谢谢。

演示: https://jsfiddle.net/Lnk2dmnb/

最佳答案

如果您可以假设单词是由空格分隔的任何文本 block ,那么这样的方法就可以了

$(this).text().split(' ').length;

https://jsfiddle.net/Lnk2dmnb/7/

关于javascript - jquery - 限制div中的单词数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44025821/

相关文章:

javascript - Prototype 中 Ajax 请求的默认全局超时是多少?

javascript - 库存 list Dynagrid 演示

javascript - UI-路由器。如何导航到项目中我不想包含为状态的页面?

javascript - 使用 if 语句检查元素是否显示 : block jquery

javascript - HTML 标记上的数据属性值被读取为数组而不是字符串

JavaScript :TypeError: document. getElementById(...) 为空

javascript - 在 Bootstrap 的每一列中排序

javascript - 使用 JQuery 隐藏与按钮中的文本不匹配的表行

jquery - 如何在 Jquery 中使用函数?

javascript - jQuery 点击重复两次