2010-07-10 62 views
0

有下一個問題:
i.g.我們有下一個HTML與結構:jquery和'innerHTML'包裝

<html> 
    <head> 
     <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
     <script type="text/javascript"> 
      $(document).ready(function(){ 
       $($("#global").attr("innerHTML")).wrap('<div name="wrapper"></div>'); 
      }) 
     </script> 
    </head> 
    <body> 
     <div id="global"> 
      <div id="container"> 
       <div id="sub1"> 
        <h1> hello world </h1> 
       </div> 
       <div id="sub2"> 
        <h1> hello world again</h1> 
       </div> 
      </div> 
      <div id="container3"> 
        <h1> hello world again</h1> 
      </div> 
     </div> 
    </body> 
</html> 

wrap功能,有的爲什麼不進行這項工作,因爲我認爲,它發生,因爲innerHTML還沒有父母,所以,我怎樣才能避免這種情況,和包裹幾個元素(其具有「一個級別」和共同的父級)?

回答

2

嘗試

$("#global").contents().wrapAll('<div name="wrapper"></div>'); 

demo

0

我不知道我知道你要問什麼,但如果你想包裝容器,做到:


$(document).ready(function(){ 
    $("#global > div").wrap('...'); 
}) 

如果你想包裹的潛艇,做:


$(document).ready(function(){ 
    $("#global > div > div").wrap('...'); 
}) 

如果要包裝所有div,請執行以下操作:


$(document).ready(function(){ 
    $("#global div").wrap('...'); 
})