私は長いタイトルを持っていますが、それらを切り捨てたいのですが、単語が途切れないように、単語を切断しない単語の間で切断が行われることを意味します。
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
}
JQueryを使用する代わりに、cssプロパティtext-overflow:Ellipsis
。文字列を自動的に切り捨てます。
.truncated { display:inline-block;
max-width:100px;
overflow:hidden;
text-overflow:Ellipsis;
white-space:nowrap;
}
プロトタイプあり、スペースなし:
String.prototype.trimToLength = function (trimLenght) {
return this.length > trimLenght ? this.substring(0, trimLenght - 3) + '...' : this
};