js封装的一行半显示省略号。(字数自由控制)

Posted 小_Li_Kelly

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js封装的一行半显示省略号。(字数自由控制)相关的知识,希望对你有一定的参考价值。

$(function() {
//控制一行半隐藏
(function ($) {
$.fn.displayPart = function (opts) {
$(this).each(function () {
displayPart($(this), opts);
});
}
function displayPart($el, opts) {
var defaults = {
displayLength: 50 //具体的想要显示的字数
}
this.Settings = $.extend(defaults, opts);
if (this.Settings.displayLength == defaults.displayLength && $el.data("textcount")) {
this.Settings.displayLength = $el.data("textcount");
}
var displayLength = this.Settings.displayLength;
var text = $el.text();
if (!text) return "";
var result = "";
var count = 0;
for (var i = 0; i < displayLength; i++) {
var _char = text.charAt(i);
if (count >= displayLength) break;
if (/[^x00-xff]/.test(_char)) count++; //双字节字符,//[u4e00-u9fa5]中文
result += _char;
count++;
}
if (result.length < text.length) {
result += "...";
}
$el.text(result);
}
})(jQuery);
$("p").displayPart();
//控制一行半隐藏

})




































以上是关于js封装的一行半显示省略号。(字数自由控制)的主要内容,如果未能解决你的问题,请参考以下文章

js表格限制字数表超过的内容隐藏

js实现字数超出宽度自动显示省略号?

div+css怎么显示两行或三行文字,然后多出的部分省略号代替??

如何将多余的文字变成省略号 JS代码

编写vue的时候(html也一样),限制一个div内可显示的字数

截取指定字数