jQueryでouterHTML属性を使う方法を現役エンジニアが解説【初心者向け】

初心者向けにjQueryでouterHTML属性を使う方法について解説しています。outerHTMLによるHTMLの書き換えの基本、innerHTMLとの違い、jQueryでの記述例を説明します。使用時の注意点についても覚えておきましょう。

TechAcademyマガジンは受講者数No.1のオンラインプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。

jQueryでouterHTML属性を使う方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

 

そもそも、HTMLの記述方法がわからない場合は、 HTMLの書き方について解説した記事を読むとさらに理解が深まるでしょう。

 

なお本記事は、TechAcademyのオンラインブートキャンプ、Webデザイン講座のHTMLカリキュラムをもとに執筆しています。

 

田島悠介

今回は、HTMLに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

jQueryでouterHTML属性を使う方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

outerHTMLとは

outerHTMLとは、要素とそのHTMLの中を取得するプロパティです。

JavaScriptにて、Document Object Model (DOM)に接続してから、要素の参照の処理を記述しましょう。

また、要素を参照したタイミングでは、outerHTMLのオブジェクトに、参照の対象になった要素とその子要素を全て含めたHTMLが格納されています。

以下にサンプルコードも用意したので、結果をコンソールで確認してみましょう。

See the Pen
2020-02-10-sample11
by YOHEI INAI (@yohei_inai)
on CodePen.

See the Pen
2020-02-10-sample14
by YOHEI INAI (@yohei_inai)
on CodePen.

このouterHTMLのオブジェクトにHTMLコードを文字列として代入することによって、対象の範囲を全て書き換えることが可能です。

 

innerHTMLとの違い

要素を参照した場合、innerHTMLのオブジェクトには、参照の対象になった要素をのぞいて、その全ての子要素のHTMLが格納されています。

要素の中身のみを変えることになり、使い勝手が良いため、outerHTMLよりもinnerHTMLが多用されています。

 

See the Pen
2020-02-10-sample12
by YOHEI INAI (@yohei_inai)
on CodePen.

 

innerHTMLもouterHTMLと同様に、HTMLコードを文字列として代入することによって、対象の範囲を全て書き換えることが可能です。

次の項目では、jQueryでの記述をみていきましょう。

 

[PR] HTML/CSSで挫折しない学習方法を動画で公開中

実際に使ってみよう

jQueryの記述では、prop(“outerHTML”)を実行することによって、outerHTMLと同様の結果を実現可能です。

See the Pen
2020-02-10-sample13
by YOHEI INAI (@yohei_inai)
on CodePen.

また、html()の引数に、文字列を代入することによって、innerHTMLと同様に対象の範囲を全て書き換えることができます。

See the Pen
2020-02-10-sample15
by YOHEI INAI (@yohei_inai)
on CodePen.

JavaScriptによる要素の書き換えは、保守性を欠くこともありますので、多用には注意しましょう。

 

執筆してくれたメンター

井内洋平

TechAcademyの現役メンター。

元Web Developerで、趣味は貯金、節税対策、投資信託、株式投資、FXなど多岐にわたる。

 

大石ゆかり

jQueryでouterHTML属性を使う方法がよく分かったので良かったです!

田島悠介

ゆかりちゃん、これからも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは初心者でも、最短4週間でオリジナルWebサイトを公開できるオンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。