JSFiddle: https://jsfiddle.net/9krvkfpw/
嗨,
我正在尝试删除所有子元素,但我不太确定最有效的方法是什么。
这是一些示例代码:
<div id="container">
<div id="el1">Remove</div>
<div id="el2">Remove</div>
<div id="el3">Remove</div>
<div id="el4">Remove</div>
<script type="text/javascript">
// Keep
</script>
<div id="lastEl">Keep</div>
</div>
本质上,我想要做的是删除脚本元素上方的所有元素。我不能只找到第一个脚本元素,因为有时在我想要保留的元素之上还有更多元素,所以它们会妨碍。
我的想法是通过点击#lastEl
并获取前一个元素来获取脚本标签。
像这样:
var script = $('#container').children('#lastEl').prev();
从这里开始,我不确定继续进行的最佳方法是什么,或者这是否是最好的方法?
我可以多次执行 script.prev().remove()
之类的操作,但这并不总是有效,因为在我的脚本之前总是有不同数量的元素m 开头。
任何想法都会很棒!
谢谢!
最佳答案
要准确回答您正在寻找的内容:
Essentially, what I want to do is remove all elements above the script element
您可以执行以下操作:
$('#container script').prevAll().remove();
关于jQuery - 删除特定子元素之前的所有子元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38631608/