jQuery wrap()の例
jQuery
wrap()
は、一致した要素のそれぞれにHTML要素をラップするために使用されます。
例えば、
<div class="innerBox">Ip man vs Iron man</div> <div class="innerBox">Ip man 2 vs Iron man 2</div>
‘wrapBox’のクラス名を含むdivタグでラップします。
$('.innerBox').wrap("<div class='wrapBox'></div>");
新しい内容は次のようになります:
<div class='wrapBox'> <div class="innerBox">Ip man vs Iron man</div> </div> <div class='wrapBox'> <div class="innerBox">Ip man 2 vs Iron man 2</div> </div>
$('.innerBox').wrap("<div class='wrapBox'>TESTING</div>");
次のことを期待していますか?
<div class='wrapBox'>TESTING <div class="innerBox">Ip man vs Iron man</div> </div>
いいえ、結果は完全に置き換えられます。ラップは、コンテンツではなくhtmlタグのみをサポートしています。
<div class='wrapBox'>TESTING</div>
自分で試してみてください
<html>
<head>
<script type="text/javascript" src="jquery-1.3.2.min.js"></script>
<style type="text/css">
.innerBox{
padding:8px;
border:1px solid blue;
margin:8px;
}
.wrapBox{
padding:8px;
border:1px solid red;
margin:8px;
}
</style>
</head>
<body>
<h1>jQuery wrap() example</h1>
<div class="innerBox">Ip man vs Iron man</div>
<div class="innerBox">Ip man 2 vs Iron man 2</div>
<p>
<button id="wrapButton">wrap()</button>
<button id="reset">reset</button>
</p>
<script type="text/javascript">
$("#wrapButton").click(function () {
$('.innerBox').wrap("<div class='wrapBox'></div>");
});
$("#reset").click(function () {
location.reload();
});
</script>
</body>
</html>