js中获取属性

js获取元素节点属性有getAttribute方法,但为什么input的value可以直接用点符号获取,又比如audio的src也可以直接获取,这跟使用getAttribute获取有区别吗?有没有规定哪些元素属性只能用哪种特定方法获取呢?

阅读 3.7k
4 个回答

简单的说,那些用点获取属性的方法是早期的不标准的、不太好的方法。getAttribute()之类是后来提出的标准的、更通用更好用的方法。为了向后兼容,浏览器保留了原来的方法。

getAttribute是用来获取你自定义的属性,而可以直接点获取的是你这个元素本身自带的属性

node.src,node.href,这是早期的html-Dom,并不是所有的属性都支持这样的写法,而getAttribute可以支持所有属性。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题