微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何以最佳方式用jQuery删除“n”个第一个或最后一个元素?

我有一个表有许多行(50)和单元格(50).现在我想用jQuery删除n个第一个或最后一个单元格.目前我有以下代码
var n = 10;
var last = true;
for (var i = 0; i < n; i++) {
   table.find('tr').each(function() {
      if(last)          
         $(this).find('td:last').remove();
      else
         $(this).find('td:first').remove();
   });
}

注意:表是一个jQuery元素.

代码可以工作,但是当我有一个50行50个单元格的表格时,执行速度非常慢,我删除了最后10个单元格.任何想法如何优化代码

编辑:我也添加了第一个子句.

解决方法

我认为最佳可能是使用 nth-last-child.
table.find("tr td:nth-last-child(-n+10)").remove();​

好处是内部浏览器CSS选择引擎将被使用(或者在IE jQuery的情况下会帮助一点:)
这是删除最后3个元素的demo.在你的情况下将其改为10.

原文地址:https://www.jb51.cc/jquery/180403.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐