如果超过290个字符,计算两个p中的字符并在第二个p中修剪?

时间:2014-04-08 15:31:06

标签: jquery count

我在带有标题和内容的页面上呈现问题,如果字符总数(标题和内容)超过290个字符,我想修剪内容div中的最后x个字符,以便总计字符数将是290.我还想在最后添加“...”。

使用下面的代码,我检查字符总数( count ),但我无法为其余部分提供解决方案。我想我可以使用 substr()

<div class="question_list">
    <div class="itemtext">
        <p>This is a title</p>
        <p>This is some content.</p>
    </div
</div>
<div class="question_list">
    <div class="itemtext">
        <p>This is another title</p>
        <p>This is the content in the other question.</p>
    </div>
</div>


$('.question_list').find('.itemtext').each(function(){
    var count = $(this).find("p").text().length;
    while (count >= 290) {
        // ?
    }
});

1 个答案:

答案 0 :(得分:1)

你可以这样做:

$('.question_list').find('.itemtext').each(function(){
    var count = $(this).find("p").text().length;
    if (count < 290) {
        return;
    }
    var remaining = 290 - $(this).find("p").first().text().length;
    var oldText = $(this).find("p").last().text();
    $(this).find("p").last().text(oldText.substr(0, remaining) + '...');
});

小提琴:http://jsfiddle.net/wdfMy/