我仍然在尝试学习纯 javascript,因为我跳过它并去学习 jQuery,尽管我不再想要一个库。我想要速度,无论如何我对纯 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()
那么我将如何在var profile
上面插入额外的 HTML?
第三个也是最后一个问题
我想弄清楚这类问题,我一直在学习循环函数而不是,.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);
}
请让我知道我的代码中是否有任何问题,谢谢。