javascript中getelementsbytagname和getelementsbyname之间的区别是什么? [英] what is the difference between getelementsbytagname and getelementsbyname in javascript
本文介绍了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屋!
查看全文