Javascript 有没有办法截断元素';jQuery中的文本是什么?

Javascript 有没有办法截断元素';jQuery中的文本是什么?,javascript,jquery,Javascript,Jquery,我有这个元素: "<span class=interests><a href=>Acoustics</a><a href=>Actuarial Studies</a><a href=>Administrative Law</a></span>" “” 我想用a的文本来截断它,例如:上面例子中的声学。如果大于50,我想截断它 如何使用jQuery实现这一点?请尝试以下操作: $('span a')

我有这个元素:

"<span class=interests><a href=>Acoustics</a><a href=>Actuarial Studies</a><a href=>Administrative Law</a></span>" 
“”
我想用a的文本来截断它,例如:上面例子中的声学。如果大于50,我想截断它

如何使用jQuery实现这一点?

请尝试以下操作:

$('span a').each(function(){
    if($(this).text().length > 50)
        $(this).text($(this).text().substr(0,50));
});
试试这个

    <span id="mainText" >
<a>
    Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.</a></span>
    <script>
      jQuery(document).ready(function(){
      $('span a').each(function(a, v){
          if ($(this).text().length>50){
              $(this).remove();
          }
      })


})
</script>

Lorem Ipsum只是印刷和排版行业的虚拟文本。自16世纪以来,Lorem Ipsum一直是行业标准的虚拟文本,当时一位不知名的印刷商拿起一个打印工具,将其拼凑成一本打印样本书。它不仅存活了五个世纪,而且还跨越到电子排版,基本上保持不变。它在20世纪60年代随着包含Lorem Ipsum段落的Letraset表单的发布而流行,最近随着Aldus PageMaker等桌面出版软件的发布,包括Lorem Ipsum版本。
jQuery(文档).ready(函数(){
$('span a')。每个(函数(a,v){
如果($(this).text().length>50){
$(this.remove();
}
})
})
$('.a')。每个(函数(){
var truncated=$(this.text().substr(0,50);
//如果字符串被截断,则使用省略号更新

$(this).text(truncated+(truncated.length将函数传递给text方法将允许动态更改文本

$('a').text(function( index, value ) {
  if (value.length > 50){
  return value.substr(0, 50);
  }
});
ABCDEF如果ABCDEF.length>3,让我们这样看:ABC…–real1 42分钟前

?

你会得到:

AcousticsActuarial StudiesAdministrative LawSometh...
放弃链接


在谷歌上搜索省略号插件。简单地说:
e.text(e.text().substr(0,50))
-但你可能对更复杂的方法感兴趣。@Adammerfield CSS不能通过字符数进行限制(这可能是一件好事,但不能满足要求)@user2864740这就是为什么我要发布一条评论而不是答案。很多时候,由于字符宽度的不同,你不想根据任意长度的随机字符数来截断文本。你可能想根据容器的布局来截断。这只是建议有更好的方法。他不想删除除此之外,只需将其截断为50个字符。这将对所有锚文本进行修剪。我想要的是找到所有锚文本中的字符数,然后将其截断。如果ABCDEF.length>3,则表示如下所示:ABC…此处获取总大小:var i=0;$('span a')。每个(函数(){i=i+$(this.text().length;})从那以后我还是不明白你想做什么。
<span class='interests'>
    <a href='#'>Acoustics</a>
    <a href='#'>Actuarial Studies</a>
    <a href='#'>Administrative Law</a>
    <a href='#'>Something inside your head, Something inside your head, Something inside your head, Something inside your head</a>
</span>
var total = 0;
var truncated = "";

$('.interests a').each(function(){
    total+=$(this).text().length;
    truncated+=$(this).text();
});

if(total>50){
    truncated = truncated.substring(0, 50)+'...';
    $('.interests').html(truncated);    
}
AcousticsActuarial StudiesAdministrative LawSometh...