Как я могу усечь строку в jQuery?
У меня длинные названия и я хочу усечь их, но таким образом, чтобы ни одно слово не ломалось, я имею в виду, что резка происходит между словами, не режущими слово.
Как я могу это сделать с помощью jquery?
5 ответов:
от: усечение текста jQuery (подробнее стиль)
попробуйте это:
var title = "This is your title"; var shortText = jQuery.trim(title).substring(0, 10) .split(" ").slice(0, -1).join(" ") + "...";
и вы также можете использовать плагин:
как расширение строки
String.prototype.trimToLength = function(m) { return (this.length > m) ? jQuery.trim(this).substring(0, m).split(" ").slice(0, -1).join(" ") + "..." : this; };
использовать как
"This is your title".trimToLength(10);
решение выше не будет работать, если исходная строка не имеет пробелов.
попробуйте это:
var title = "This is your title"; var shortText = jQuery.trim(title).substring(0, 10) .trim(this) + "...";
function truncateString(str, length) { return str.length > length ? str.substring(0, length - 3) + '...' : str }