将长度限制设置为<p>元素</p>

时间:2013-11-22 03:51:42

标签: javascript jquery limit paragraph string-length

我需要完成的工作很简单 - 将段落元素长度的限制设置为60个字符。我写的jQuery脚本如下:

$('p.classname').each(function(){
var paragraph = $(p.description).text();
var strlength = paragraph.length;
var maxlength = 60;
strlength < maxlength; 
});

我仍然可以在元素中包含超过60个字符。 我怎样才能将它限制在60?

2 个答案:

答案 0 :(得分:5)

使用带有回调的text()的简单方法,以相同的方式循环所有元素each

$('p.classname').text(function(i, txt) {
    return txt ? txt.slice(0,60) : txt;
});

代码中的一个主要问题是$('p.description').text();会将页面中所有段落的文本连接在一起。您需要隔离每个段落的实例。要在each循环中执行此操作

$('p.description').each(function() {
    /* text for current paragraph */
    var text = $(this).text();
});

您还使用了无引号的无效选择器,除了检查其长度之外,您再也不对文本做任何事情。

答案 1 :(得分:4)

您希望将内容修剪为最多60个字符,然后

var maxlength = 60;
$('p.classname').text(function (_, text) {
    return $.trim(text).substring(0, maxlength);
});