jQuery的before()方法是用來在匹配的元素前插入內容的。當需要在元素前插入內容時,jQuery提供了一個方便的辦法,在before()方法中可以傳遞一個HTML字符串、DOM元素、jQuery對象或回調函數。
$(selector).before(content);
其中,selector可以是任何有效的jQuery選擇器。而content參數則可以是以下幾種類型:
- HTML字符串:一個HTML字符串,它將被插入到選擇器匹配的元素之前。
$(selector).before('
插入的內容'); - DOM元素:一個DOM元素,它將被插入到選擇器匹配的元素之前。
var div = document.createElement('div'); $(selector).before(div);
- jQuery對象:一個jQuery對象,它的內容將被插入到選擇器匹配的元素之前。
var $div = $('
插入的內容'); $(selector).before($div); - 回調函數:一個回調函數,它返回要插入的內容。函數的第一個參數為元素的索引,第二個參數為元素的舊HTML。
$(selector).before(function(index, oldHtml) { return '
索引為' + index + '的元素的舊HTML為:' + oldHtml + ''; });
示例:在一個div之前插入一個p元素,其中包含一張圖片
<div id="myDiv"></div>
<script>
$(document).ready(function(){
var $img = $( '<img>').attr('src', 'image.jpg');
var $p = $( '<p>').append($img);
$('#myDiv').before($p);
});
</script>