前提・実現したいこと
JavaScriptのcloneNodeで複製したものの子要素のクラスを操作したい
html
1<div class="original"> 2 <div class="class1"> 3 </div> 4</div>
JavaScript
1const original2 = document.getElementsByClassName("original1")[0].clone(); 2original2.getElemntsByClassName("class1").className = "class2"; 3document.getElementsByClassName("original2").appendChild(original2); 4
としたときに
html
1<div class="original"> 2 <div class="class1"> 3 </div> 4 <div class="original"> 5 <div class="class2"> 6 </div> 7 </div> 8</div>
となって欲しい
発生している問題・エラーメッセージ
JavaScriptの3行目で次のようなエラーが出る
TypeError: document.getElementsByClassName(...)[0] is undefined
試したこと
cloneNode
ではなくimportNode
を利用しても同じになってしまう
javascript
1const original = document.getElementsByClassName("original")[0]; 2const clone = document.importNode(original, true); 3clone.getElemntsByClassName("class1").className = "class2"; 4original.appendChild(clone);
全く同じエラーが出る
補足情報(FW/ツールのバージョンなど)
Firefox 最新版
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/02 12:30