JS getElement by ID+Class
JS getElement by ID+Class
<div id="myId" class="sampleClass">
Div with id and class
</div>
<div class="sampleClass">
Div with only class
</div>
我想要得到id和class的div。除了以下内容,还有其他更好的方法吗:
var sample = document.getElementsByClassName("sampleClass");
for(var x = 0; x<sample.length; x++) {
if(sample[x].id=="myId")
return sample[x];
}
试试这个:
var sample = document.querySelectorAll("#myId.sampleClass");
console.log(sample[0]);
输出:
<div id="myId" class="sampleClass">
浏览器支持:
http://caniuse.com/#feat=queryselector
用于获取多个IDs
:
<div id="myId" class="sampleClass">
Div with id and class
</div>
<div id="hisId" class="sampleClass">
Div with id and class
</div>
<div id="herId" class="sampleClass">
Div with id and class
</div>
<div class="sampleClass">
Div with only class
</div>
JavaScript:
var sample = document.getElementsByClassName("sampleClass");
for(var x = 0; x<sample.length; x++) {
var getId = sample[x].getAttribute("id");
if(getId){
console.log(getId)
}
}
您也可以使用jquery:
HTML:
<div id="myId" class="sampleClass">
Div with id and class
</div>
<div class="sampleClass">
Div with only class
</div>
jquery:
$(document).ready(function(){
var sample = $('.sampleClass'); //getting object by class
for(var x = 0; x<sample.length; x++) {
if(sample.attr('id')=="myId") //checks ID attribute
console.log(sample); }
});
id
属性使用不正确id
在页面上必须是唯一的
所以,如果你需要id
元素,你只需要使用:
document.getElementById(id);
这种方法速度惊人-浏览器有<id, HTMLElement>
的地图
您也可以将jQuery
包装器与#id
选择器一起使用,但它更通用,因此速度慢得多。
$('#'+id); // jQuery
document.querySelector('#'+id); // Native
相关文章:
- 通过id和class属性获取元素
- javascript点击函数不;不适用于ID和Class
- getDocument by id/get input text from button dons'不起作用
- 使用类而不是 ID(通过 CLASS 而不是 ID 获取元素)
- JQuery class vs ID
- 获取<img>src,并通过class设置为变量(id不可用)
- 为什么我的jquery代码在使用ID但使用Class时不起作用
- JavaScript id + class vs. class selector performance
- jQuery li element select by ID
- Angularjs ng-repeat filter by id
- db.collection findOne by id 运行但不返回
- Jquery 如何在不作为父级的情况下选择低于 id/class 的元素
- Dojo Query by ID defaulting to getElementById
- JS getElement by ID+Class
- 使用javascript从外部webblink通过其属性(id, class)获取图像
- 任何用于编码复杂标识符的标准函数,如html元素id/class/name
- 当style在id/class css中定义时,获取/设置元素的style
- 美元(文档).On (event, '#id .class')比$(document)快.(事件,& #
- 用JQuery替换没有ID/Class的图像
- 使用不带id/class的javascript自动点击链接