プロが教えるわが家の防犯対策術!

いつもお世話になっております。

<img src="" alt="">
の周りをjqueryを使ってhtmlで囲いたいのですが

$("img").before(<div class="container">);
$("img").after("<div class="hoge"></div></div>");
としたのですが結果は

<div class="container"></div>
<img src="" alt="">
とbeforeの時点で</div>が勝手に生成されて困ってます。

あとbefore,afterの中に「<script src="hogehoge"></script>」を入れたのですが
反応しませんでした。何とかして途中でjs読み込みを入れたいのですがどうすればよいでしょうか、、、

A 回答 (2件)

var img = $('img');


$('<div class=container><div class=hoge></div></div>') // 囲むHTMLを生成
.insertBefore(img) // <img> の前に挿入
.prepend(img) // <img> を内部に移動
.appned('<script src=hogehoge></scr'+'ipt>'); // スクリプトを追加

スクリプトを jQuery で追加する際は、'<script src=hogehoge></scr'+'ipt>' のようにしてください。
理由:
https://html.spec.whatwg.org/multipage/scripting …
    • good
    • 1
この回答へのお礼

何となく上手く行きそうです!!
あと1点、、Js外部読み込みですが

非同期で読み込まれた外部スクリプトからの document.write() の呼び出しは無視されました。

とエラーが出て外部Jsが読み込まれません、、、
何か良い方法はありますでしょうか。

お礼日時:2017/05/29 17:47

> 非同期で読み込まれた外部スクリプトからの document.write() の呼び出しは無視されました。


document.write を使うかぎり不可能です。

以下の方法で書き込みをすれば大丈夫なのでお勧めです
$('書き込みたいHTML').appendTo('#書き込みたい場所の親要素ID')
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!