2015-07-02 93 views
3

我試圖找到一種方法將錨標記添加到所有h3標記。內容本質上是動態的。將錨標記應用於類下的所有h3標記

我要添加動態錨標記爲所有的H3標籤只

<div class="class1"> 
    <h2>Main heading</h2> 
    <h3>Heading1</h3> 
    <h1>some content1</h1> 
    <h3>Heading2</h3> 
    <h1>some content2</h1> 
    <h3>Heading3</h3> 
    <h1>some content3</h1> 
</div> 

我想下面的jQuery代碼,但它創造什麼

$("h3.class1").append('<h3>'); 
var al = $("h3.class1 >"); 

al.append('<a href="#"></a>'); 
+0

使用al.each(功能(I,E){$(本).append( '<一個....');}); – Monah

回答

2
$('div.class1 h3').each(function(){ 
      $(this).wrap('<a />'); 
     }); 
2

使用wrap

總結圍繞匹配元素集中每個元素的HTML結構。

$('.class1 h3').wrap('<a />'); 

這將wrap所有h3.class1通過anchor標籤。

DEMO

2

嘗試wrapInner()

$('.class1 h3').wrapInner('<a href="#"></a>')
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div class="class1"> 
 
    <h2>Main heading</h2> 
 
    <h3>Heading1</h3> 
 
    <h1>some content1</h1> 
 
    <h3>Heading2</h3> 
 
    <h1>some content2</h1> 
 
    <h3>Heading3</h3> 
 
    <h1>some content3</h1> 
 
</div>

0

可以使用.html()回調函數來實現這一目標:

功能 泰pe:函數(整數索引,htmlString oldhtml)=> htmlString 返回要設置的HTML內容的函數。接收集合中元素的索引位置和舊HTML值作爲參數。 jQuery在調用函數之前清空元素;使用oldhtml參數來引用先前的內容。在函數中,這指的是集合中的當前元素。

$('.class1 h3').html(function(i,oldhtml){ 
    return '<a href="#">'+ oldhtml +'</a>' ; 
}); 
+0

Downvoter關心評論。 –