jQuery中getElementsByTagName()
的等价物是什么?我只想在jQuery中创建一个元素集合,这样我就可以遍历它们并对每个项目做一些事情。
非常感谢!
答案 0 :(得分:39)
$("tagnamehere")
所以:
$("div").each(function() {
// do something exciting with each div
$(this).css("border", "1px solid red");
// do something by directly manipulating the wrapped DOM element
this.style.border = "1px solid red";
// do something only if this particular div has a class of 'pretty'
if($(this).hasClass("pretty")) {
$(this).text("I am the pretty one");
}
});
或只是:
// apply some css to all div elements
$("div").css("border", "1px solid red");
请记住,当您使用jQuery选择多个元素时,例如$("span")
,您在对象上调用的任何方法都将发生在所有匹配的元素上。将其视为“隐式迭代” - 例如$("span").hide();
将隐藏页面上的所有span元素。
请参阅:
答案 1 :(得分:7)
只需使用元素选择器
$('elementname')
E.g。
$('div')
并进行迭代:
$('div').each(function(){
var $this = $(this);
//insert code here
});
但是,您可能不必进行迭代,因为将为集合中的每个项调用一个调用集合的方法,因此
$('div').hide();
...将隐藏所有div。
答案 2 :(得分:0)
给出一个字符串tagName
,此语句:
document.getElementsByTagName(tagName)
...可以使用jQuery编写:
$(tagName)
给出一个本地DOM元素element
和一个字符串tagName
,此语句:
element.getElementsByTagName(tagName)
...可以使用jQuery编写:
$(element).find(tagName)
注意::使用getElementsByTagName
获取本机DOM元素,同时使用jQuery语句获取jQuery对象。如果您希望使用带有jQuery的本机DOM元素,则可以使用get()
-How do I pull a native DOM element from a jQuery object?
答案 3 :(得分:-3)
只需要输入类似的东西:
var some = $('[name="tagname"]');