ライブラリはもう必要ありませんが、純粋なjavascriptをスキップしてjQueryを学びに行ったので、まだ純粋なjavascriptを学ぼうとしています。とにかく、純粋な JavaScript についていくつか質問があります。
最初の質問:
var profile = document.getElementsByClassName("postprofile-details");
var details = profile.getElementsByTagName("dd");
details[0].style.display = "none";
のエラーが発生し続けます
TypeError: Object #<NodeList> has no method 'getElementsByTagName'
これについてどうすればいいですか?
基本的に上記と同じコードに関連する次の質問ですが、jQuery には が.prepend()
あり.append()
、上記に追加の HTML を挿入するにはどうすればよいvar profile
ですか?
3番目で最後の質問
この種の問題を解決したいと思います。代わりにループ関数を学習してきましたが.each()
、これが私が思いついたものですが、エラーが発生しています
var a = document.getElementsByClassName('postprofile-details');
for (var i =0; i<a.length; i++) {
a[i].getElementsByTagName('dd').style.display='none';
}
当面の質問は、for ループ関数内でループを選択していることを実際に確認するにはどうすればよいかということです。私はしますか
A ) a[i].getEle...
また
B ) a.getEle...
これらの質問に対する回答は役に立ちます。jQuery の使用にうんざりしています。
以下の回答とコメントで
これ書けるか見てみよう
var profile = document.getElementsByTagName('postprofile-details');
for (var i=0; i<profile.length; i++) {
var dd = profile[i].getElementsByTagName('dd');
dd.style.display='none';
var newEle = document.createElement('div');
newEle.id = 'toggle';
profile[i].appendChild(newEle);
}
コードに問題がある場合はお知らせください。ありがとうございます。