如何通过类名获取元素
How to get element by class name
我想知道是否有一种方法可以使getElementByClassName("classname").innerHTML
函数或相当于getElementById("ClassName").innerHTML
的东西
您的函数名称中缺少s
。getElementsByTagName
返回需要迭代的元素的元素集合:
var elements = document.getElementsByClassName("classname");
for (var i = 0; i < elements.length; i++) {
elements[i].innerHTML = 'foo';
}
IE8及以下版本不支持getElementsByClassName
,所以你必须找到一个填充或使用querySelectorAll
(IE8)。
我建议您使用JQuery,您可以直接使用CSS选择器(如.yourclass)来查找给定类的所有元素:
$('.yourclass').doWhatYouWant();
如果你不喜欢使用JQuery,你可以使用纯Javascript:
document.getElementsByClassName('my-fancy-class')
但要小心IE8不兼容问题。作为另一种选择(速度较慢,但可以构建更复杂的CSS选择器),您可以使用:
document.querySelector('.cssSelector')
这将返回一个元素响应你的CSS选择器,或
document.querySelectorAll('.cssSelector')
将返回多个元素。
可以使用jquery
$('.className').html();
http://api.jquery.com/html/如果你使用jQuery,你可以像在CSS选择器中那样获得它,所以:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js" type="text/javascript"></script>
然后……
$('.classname').each(function() {
// get html
$(this).html();
// set html
$(this).html('something');
});
注意,您还可以方便地管理innerHTML
相关文章:
- 如何在jQuery中获取元素的形式
- 通过id和class属性获取元素
- Javascript:Can't使用getElementById获取元素
- 使用jquery.html()获取元素本身的html
- 如何从iframe内部获取元素
- Javascript函数获取元素内容
- 使用模板后,使用Angular获取元素属性值
- 获取元素类名的部分
- 从JSON.parse获取元素
- 获取元素内部的缩写
- 在不引用文档的情况下使用AngularJS获取元素
- 如何获取元素's的title属性
- 使用Javascript,获取元素的方法是什么,基于打开和关闭标记之间的文本
- Javascript获取元素背景图像,但消除了“;url()”;
- Javascript:按类获取元素,但跳过某个类
- 当display:none时,getElementById()无法获取元素
- 我的ID获取元素不起作用
- 如何获取元素:使用javascript和CORS悬停背景
- 能够获取元素长度,但不能获取内部 HTML
- 如何使用jQuery在模板kendo UI中获取元素类