質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

解決済

1回答

1228閲覧

jQueryでwrapできない。

Chandler_Bing

総合スコア673

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2019/02/17 15:34

JS

1<script> 2 $(function() { 3 var hotelpics = $("<div>", { 4 "class": "hotelpics" 5 }); 6 var mainpic = $("<div>", { 7 "class": "mainpic" 8 }); 9 var others = $("<div>", { 10 "class": "others" 11 }); 12 var hotelinfo = $("<div>", { 13 "class": "hotelinfo" 14 }); 15 var hotelname = $("<h2>", { 16 "class": "hotelname" 17 }); 18 var tags = $("<div>", { 19 "class": "tags" 20 }); 21 var rating = $("<div>", { 22 "class": "rating" 23 }); 24 var price = $("<div>", { 25 "class": "price" 26 }); 27 hotelpics.append(mainpic, others); 28 hotelinfo.append(hotelname, tags, rating, price); 29 console.log(hotelpics.add(hotelinfo)); 30 console.log(hotelpics.wrap('<div>')); 31}); 32</script>

このコードを実行すると1つ目のconsole.log()の結果は以下となります。これは希望している形なので問題ありません。

HTML

1<!--兄弟要素が並んでいる--> 2<div class="hotelpics"> 3<div class="mainpic"></div> 4<div class="others"></div> 5</div> 6 7<div class="hotelinfo"> 8<h2 class="hotelname"></h2> 9<div class="tags"></div> 10<div class="rating"></div> 11<div class="price"></div> 12</div>

この2つの兄弟要素を囲うdiv要素をつけるためにwrap()をしましたが表示結果がこの様になります。

HTML

1<div class="hotelpics"> 2<div class="mainpic"></div> 3<div class="others"></div> 4</div>

以下の要素がなくなり、divも挿入されていません。

<div class="hotelinfo"> <h2 class="hotelname"></h2> <div class="tags"></div> <div class="rating"></div> <div class="price"></div> </div>

以下が希望の値です。

HTML

1<div class=""> 2 <div class="hotelpics"> 3 <div class="mainpic"></div> 4 <div class="others"></div> 5 </div> 6 7 <div class="hotelinfo"> 8 <h2 class="hotelname"></h2> 9 <div class="tags"></div> 10 <div class="rating"></div> 11 <div class="price"></div> 12 </div> 13</div>

機能しない理由としては、兄弟要素が2つ並んでいるからでしょうか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

wwbQzhMkhhgEmhU

2019/02/17 21:07

ドキュメントを良く読めば分かりそうな気がします。
guest

回答1

0

ベストアンサー

javascript

1 $('.hotelpics,.hotelinfo').wrapAll('<dic>');

投稿2019/02/18 00:47

yambejp

総合スコア114843

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問