unwrap
unwrap
方法用于在目标元素的移除一层外部包裹的元素。
下面是一个示例:
<script src="https://cdn.jsdelivr.net/gh/kirakiray/ofa.js@4.5.26/dist/ofa.min.js"></script>
<style> div{border: #aaa solid 1px; margin:8px; padding:8px;} </style>
<div style="color:red;border-color:red;">
<div id="target">I am target</div>
</div>
<script>
setTimeout(()=>{
$('#target').unwrap();
}, 500);
</script>
注意事项
目标元素必须拥有父节点,否则包裹操作会失败。
const $el = $(`
<div>
<div id="target"></div>
</div>
`);
$el.unwrap(); // ❌ 错误,没有父元素,无法unwrap
$el.$('#target').unwrap(); // ✅ 正确,去除包裹的元素
当拥有其他兄弟元素时,也不可以执行 unwrap;
const $el = $(`
<div>
<div id="target"></div>
<div>I am siblings</div>
</div>
`);
$el.$('#target').unwrap(); // ❌ 错误,因为拥有其它相邻节点
请注意,在具有模板语法的元素上不要操作元素。