jquery限制.load中的字符数

时间:2013-02-18 04:43:34

标签: jquery text load

我正在使用jquery加载从页面加载内容,我试图限制它在div中允许的字符数量,我的函数有效,但有时候,我不知道为什么。

$('#violin_1_title').load('http://www.klossal.com/klossviolins/inventory.html .violin:first .about .about_txt .about_summary h3:eq(1)', function() {

    $(".txt_limit").text($(this).text().substr(0, 450)+'...');

});  

3 个答案:

答案 0 :(得分:1)

尝试

$('#violin_1_title').load('http://www.klossal.com/klossviolins/inventory.html .violin:first .about .about_txt .about_summary h3:eq(1)', function(response) {

    $(".txt_limit").text(response.substr(0, 450)+'...');

});  

这使用回调函数中的参数,该参数包含来自服务器的响应数据。

答案 1 :(得分:0)

您从服务器获得的响应输出将是HTML。因此,在这种情况下,您需要获取完整内容,然后将其转换为文本/ HTML输出,并从输出中应用子字符串。

$('#violin_1_title').load('http://www.klossal.com/klossviolins/inventory.html .violin:first .about .about_txt .about_summary h3:eq(1)', function(data) {

    $(".txt_limit").text(data.substr(0, 450)+'...');

});

如果您使用CSS很好,如果它是一行的话,您可以这样做:

.txt_limit {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

答案 2 :(得分:0)

我相信.txt_limit是动态加载的元素,那么你应该.find()在现有的父元素中:

$('#violin_1_title').find(".txt_limit").text().substr(0, 450)+'...';

或者这个:

$(".txt_limit","#violin_1_title").text().substr(0, 450)+'...';