[英]jQuery wrap a div around a massive block of HTML
我搜索.wrap()
.append()
.wrapall()
和.insertAfter()
並沒有發現解決方案。 我想采用一個新的div
並將其包裝在一個html塊中。 我無法訪問HTML,所以我需要使用jQuery。
.insertAfter()
函數是理想的,但遺憾的是它會自動關閉html標記。
問題的根源是我需要將兩個單獨的div
集中在一起,我無權訪問它們的HTML。
$(function () {
$('<div id="centerContainer">').insertAfter('#header');
$('</div><!-- centerContainer -->').insertAfter('#footer');
});
這不是DOM的功能, .insertAfter()
以這種方式向DOM添加元素而不是字符串,你應該選擇所有元素,然后在返回的集合上調用.wrapAll()
。
假設( 基於發布的代碼 ) #header
和#footer
元素之間的所有元素( 如果他們的兄弟姐妹 )應該用另一個元素包裝,你可以使用.nextUntil()
來選擇#header
下一個兄弟,直到#footer
元素然后在返回的集合上調用.wrapAll()
:
$('#header').nextUntil('#footer').wrapAll('<div id="centerContainer"></div>');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.