innerHTMLの謎の挙動について。
innerHTMLについて紹介されているいくつかのブログで、この仕様に反した謎の挙動をしており、「それを当たり前のものとして紹介している」のを発見し、どういうことなのか知りたく質問させていただきました。
###まず
innerHTMLは、その名の通り、
「element内部のHTML」=「開始タグと終了タグで囲まれた領域」
という意味です。
‘’’html
「赤いdivエレメントの中にボタンが設置されている」
感じになるはずです。
###謎の挙動について
しかし、innerHTMLについて紹介されているいくつかのブログで、この仕様に反した謎の挙動をしており、「それを当たり前のものとして紹介している」のを発見しました。その謎の挙動とは、以下のようなものです:
innerHTML内にエレメントを記述すると、「自分自身が」その記述したエレメントに取って代わる
つまり、上の例ですと、
「id名がhogeの赤いdivエレメント」だったものが、
「id名がbtnのbuttonエレメント」に、
『変身』してしまう
というものです。
この謎の挙動を紹介していたサイトとは、以下になります:
どういうことでしょうか?
最近Javascript やhtmlの仕様が大きく変わったとかでしょうか?mdnのリファレンスなどを読みましたがよくわかりませんでした。
最悪、謎の挙動に関しては謎のままで構いません。
とりあえず、冒頭に書いた挙動が正しいということが確認できれば、それでいいです。
ご回答よろしくお願いします。
回答5件
あなたの回答
tips
プレビュー