我使用的是ThreeDots jQuery pulgin,效果很好。我在ajax成功事件中使用它时遇到了麻烦。
$.ajax({
type: "POST",
url: 'url',
success: function(value) {
$("#content").append(value);
$(".ellipsis").ThreeDots({max_rows:3});
}
});
我加载一些新数据并将新数据附加到div(这很好用)。当我从成功事件内部调用ThreeDots函数时,它需要大约1分钟才能工作,并且浏览器在此期间没有响应。新数据中返回了.ellipsis spans。
有更好的方法吗?我的做法是否存在根本性的错误?
@Nick,谢谢你的回答。我用过这个,然后又向前迈进了一步。以上内容仍然在内容的每个省略号上重新运行,而不仅仅是新返回的省略号结果。
我现在这样做:
$(value).appendTo("#content").find('.ellipsis' + document.getElementById('hidPage').value).ThreeDots({max_rows:3});
$("#hidPage").val(($("#hidPage").val()-0) + 1);
答案 0 :(得分:0)
您可以在返回的响应中的.ThreeDots()
元素上运行.ellipsis
插件 ,而不是在所有上重新运行它他们,像这样:
$.ajax({
type: "POST",
url: 'url',
success: function(value) {
$(value).appendTo("#content").find('.ellipsis').ThreeDots({max_rows:3});
}
});
你不能以相反的方式链接它,因为.ThreeDots()
不可链(它返回一个自定义对象),但上面的版本应该可以正常工作。