我具有子字符串功能:
$('#text').on('mouseup', function(e){
var text = "There are a lot of text";
if (text != '') {
$('.ppr .sel_text').text(text.trim().substr(0,21) + "...");
}
});
如何仅获取文本字符串的开始结尾?
例如,现在结果是“有很多...”。
我想得到:“有...文字”
答案 0 :(得分:1)
警告:尽管String.prototype.substr(…)并未严格弃用(如“从Web标准中删除”),但它在ECMA-262标准的附件B中定义,其引入状态为:
...本附件中指定的所有语言功能和行为均具有一个或多个不良特征,如果没有遗留用法,则将从本规范中删除。 … …编写新的ECMAScript代码时,程序员不应使用或假定这些功能和行为存在。 …
改为使用String.prototype.substring()
。您必须从头到尾都使用字符串。您可以尝试以下方式:
$('#text').on('mouseover', function(e){
var text = "There are a lot of text";
if (text != '') {
$('.sel_text').text(text.substring(0,10) + "..." + text.trim().substring(text.length - 5));
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="text">There are a lot of text<div>
<div class="sel_text"></div>