before() 方法用于在被选元素前插入内容,作为兄弟节点出现;2. 可插入 html 字符串、dom 元素、jquery 对象等;3. 与 prepend()(内部插入)和 after()(后置插入)不同,before() 在外部前置内容。

在 jQuery 中,before() 方法用于在被选元素的前面插入内容。这个方法会在指定元素的外部位置插入新内容,也就是紧挨着该元素的前一个位置,但不会嵌套到元素内部。
基本语法
$(selector).before(content)
参数说明:
– content:要插入的内容,可以是 HTML 字符串、DOM 元素、jQuery 对象,或者这些类型的数组。
使用示例
假设有如下 HTML 结构:
<div id=”box”>我是原始元素</div>
我们想在这个 div 前面插入一段新内容:
$(‘#box’).before(‘<p>这是插入在前面的内容</p>’);
执行后,页面结构变为:
<p>这是插入在前面的内容</p> <div id=”box”>我是原始元素</div>
可插入的多种内容类型
- HTML 字符串:直接传入字符串形式的标签
- DOM 元素:通过 document.createElement 创建的元素
- jQuery 对象:已包装的元素集合
- 多个元素:可以传入多个参数,依次插入
例如:
let span = $(‘<span>辅助信息</span>’); $(‘#box’).before(span, ‘<hr>’);
这会在 #box 前面依次插入一个 span 和一条水平线。
与其它插入方法的区别
before() 是外部插入,在目标元素之前作为兄弟节点出现。
对比:
- prepend():将内容插入到被选元素的内部,位于最前面(子元素层级)
- after():在被选元素后面插入兄弟节点
- insertBefore():功能类似 before(),但调用方式不同,常用于反向操作
基本上就这些,before() 方法简单直接,适合动态添加前置提示、装饰元素或结构分割线等场景。