JQuery如何删除UL最后一个li

发布时间:2021-11-15 10:54:38 作者:iii
来源:亿速云 阅读:293
# JQuery如何删除UL最后一个li

## 前言

在Web开发中,动态操作DOM元素是常见需求。使用jQuery可以简化这类操作,本文将详细介绍如何使用jQuery删除`<ul>`列表中的最后一个`<li>`元素,并提供多种实现方式和注意事项。

---

## 基础方法::last选择器 + remove()

最简单的方法是使用jQuery的`:last`选择器结合`remove()`方法:

```javascript
$('ul li:last').remove();

代码解析:

  1. $('ul li:last') 选择所有<ul>中最后一个<li>
  2. .remove() 从DOM中永久删除该元素

示例:

<ul id="myList">
  <li>项目1</li>
  <li>项目2</li>
  <li>项目3</li> <!-- 将被删除 -->
</ul>

<script>
  $(document).ready(function(){
    $('#myList li:last').remove();
  });
</script>

替代方案:last()方法

jQuery的.last()方法也能实现相同效果:

$('ul li').last().remove();

性能比较:


处理动态列表

如果列表是动态生成的,建议使用事件委托:

// 点击按钮时删除最后一个li
$('#deleteBtn').on('click', function(){
  $('ul li:last').remove();
});

注意事项:

if($('ul li').length > 0){
  $('ul li:last').remove();
}

扩展方法:删除包含特定内容的li

如果需要根据内容删除最后一个匹配项:

$('ul li').filter(function(){
  return $(this).text().includes('删除我');
}).last().remove();

性能优化建议

  1. 缩小选择范围

    $('#specificUL li:last').remove(); // 优于 $('ul li:last')
    
  2. 缓存选择结果

    var $listItems = $('ul li');
    $listItems.last().remove();
    
  3. 批量操作时使用detach()

    var $lastItem = $('ul li:last').detach();
    // 需要时可重新插入
    

常见问题解答

Q1:如何删除多个UL的最后一个li?

$('ul').each(function(){
  $(this).find('li:last').remove();
});

Q2:删除后如何恢复?

jQuery的remove()会删除元素及其数据/事件,如需恢复需提前克隆:

var $lastItem = $('ul li:last').clone();
$('ul li:last').remove();
// 恢复
$('ul').append($lastItem);

Q3:与empty()的区别?


总结

本文介绍了5种删除UL最后一个LI的方法: 1. :last选择器 2. .last()方法 3. 动态列表处理 4. 内容过滤删除 5. 性能优化方案

根据实际场景选择最适合的方法,并注意做好错误处理。jQuery的灵活选择器让DOM操作变得简单高效。

提示:现代开发中也可以考虑使用原生JavaScript的querySelectorlastElementChild实现类似功能。 “`

推荐阅读:
  1. jquery 获取ul下某个li的属性和设置
  2. JQuery实现ul中添加LI和删除指定的Li元素功能完整示例

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

jquery

上一篇:jquery length是什么意思

下一篇:如何用css设置div悬浮

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》