根据这篇文章,它应该是一种Javascript 2.0方式来定义类.但是,我从未在实践中看到过这一点.这样的问题.如何使用class关键字和Javascript 1.x做事的方式有什么区别?
为了找到某个类名的子对象,我必须创建自己的辅助函数
findChildrenByTagName = function(obj, name){
var ret = [];
for (var k in obj.children){
if (obj.children[k].className === name){
ret.push(obj.children[k]);
}
}
return ret;
}
Run Code Online (Sandbox Code Playgroud)
它的工作原理的一个例子是
var li = document.createElement('li');
var input = document.createElement('input');
input.setAttribute('class','answer_input');
li.appendChild(input);
console.log(findChildrenByTagName(li,"answer_input"));
Run Code Online (Sandbox Code Playgroud)
但是,当我在上面的函数中按类替换className时,代码不起作用.所以我很自然地想知道class和className之间的区别.在谷歌上快速搜索并没有透露任何信息.
另外,返回通用对象的特定类名子项列表的最佳方法是什么?如果不存在,有没有办法将方法添加到所有对象,以便我可以调用
li.findChildrenByTagName("answer_input");
Run Code Online (Sandbox Code Playgroud)
而不是上面的全局函数?