javascript中getelementsbytagname和getelementsbyname之间的区别是什么? [英] what is the difference between getelementsbytagname and getelementsbyname in javascript

查看:149
本文介绍了javascript中getelementsbytagname和getelementsbyname之间的区别是什么?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我最近在douglas crockford演示文稿中遇到了这两种dom元素检索方法,但无法理解这两种方法之间的区别。

I recently came across these two methods for dom elements retrieval in a douglas crockford presentation but couldn't understand the difference between these two.

document.getElementsByTagName()

document.getElementsByName()

有人可以向我解释一下。

can someone please explain it to me.

该视频的链接是 http://www.youtube.com/watch?v=Fv9qT9joc0M

推荐答案

假设你有这个HTML:

Suppose you have this HTML :

<input name="test" class="cssclassname">

你得到它

document.getElementsByTagName('input')

document.getElementsByName('test')

document.getElementsByClassName('cssclassname')

此外,您可以在文档以外的元素上调用 getElementsByTagName 。例如,允许以下内容:

Also, you can call getElementsByTagName on elements other than document. For example the following is allowed,

document.getElementsById('foo').getElementsByTagName('bar')

getElementsByName 只能在 document 。

注意:


  • JavaScript区分大小写,你不能像你在问题中那样编写函数

  • 这些函数不仅仅返回元素而是返回一个实时的 nodeList ,所以你必须迭代结果或取第一个如果你确定它是好的: document.getElementsByTagName('input')[0]

  • the MDN是JavaScript方法的一个很好的文档。你应该阅读 getElementsByTagName getElementsByName

  • JavaScript is case sensitive, you can't write the functions like you did in your question
  • those functions don't return just the element but a live nodeList, so you'll have to iterate over the result or take the first one if you're sure it's good : document.getElementsByTagName('input')[0]
  • the MDN is a good documentation for JavaScript methods. You should read getElementsByTagName and getElementsByName.

这篇关于javascript中getelementsbytagname和getelementsbyname之间的区别是什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆