我想知道是否有人知道为什么jQuery没有简单的$().id()
方法。使用$().attr('id')
来提取ID似乎很愚蠢。我认为id属性很常见且足够有用,可以自己调用。
答案 0 :(得分:8)
为什么用超级函数来混淆命名空间?你已经说attr()
只能在几个额外的字符中做同样的事情。对于每个额外的函数,它会为文件大小添加字节,并为JavaScript解析器添加时间。
答案 1 :(得分:7)
另一个问题是jQuery返回一个匹配的集合,所以通常你可以拥有多个id。通过实现Id函数,您可以通过返回集合中第一个项的id来打破可链接性。
你可以简单地使用$('selector')。get(0).id;
答案 2 :(得分:1)
我认为如果你真的想要并且需要这个功能来节省时间,我会把它添加为一个新方法。有点像:
$.fn.extend({
id: function(){return this.attr('id');}
});
$('.test').id();
但我会回应詹姆斯·韦斯特盖特所说的同样的担忧,如果你在集合中有多个回报,你需要确保你正确处理它,否则你可能会破坏它。