Jquery 选择器中的 Select 元素按 class 名称并将其转换回 Jquery 对象
Select element in Jquery selector by class name and convert it back to Jquery object
我不明白为什么当我像在传统 JS 中一样寻找如何获取由 class 名称选择的元素列表中的元素时,我总是看到复杂的答案。
document.getElementsByClassName('anyclass')[1]
所以,我发现自己做不到(可能是方法不对)
$('.anyclass')[1]
但我得到了一个 DOM 元素!所以逻辑上我试过了
$('.anyclass')[1][0]
它不起作用 'TypeError: $(...)[0][0] is undefined'
任何人都可以解释为什么?谢谢!
var elm = document.createElement("div");
var jelm = $(elm); //convert to jQuery Element
var htmlElm = jelm[0]; //convert to HTML Element
我觉得你需要.eq(index)
var secondElement = $('.anyClass').eq(1); //jQuery object
var domElement = secondElement[0]; //DOM element
console.log(secondElement, domElement)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class='anyClass'>1</div>
<div class='anyClass'>2</div>
:first
伪class相当于:eq( 0 )
。也可以写成:lt( 1 )
。虽然这只匹配一个元素,但 :first-child 可以匹配多个元素:每个父元素一个。
此处
$('.anyclass:first)
快速示例:
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$($(".t")[1]).css("background-color", "yellow");
});
</script>
</head>
<body>
<p class=t>This 1.</p>
<p class=t>This 2.</p>
<p class=t>This 3.</p>
</body>
</html>
'
$('.anyclass')[0].attr("src"); you can use like this .
在您发表评论后:
$(".anyclass")[1]
是一个 DOM 元素而不是 jquery 对象。只需将其包装为 jquery $($("td")[1]).width()
我不明白为什么当我像在传统 JS 中一样寻找如何获取由 class 名称选择的元素列表中的元素时,我总是看到复杂的答案。
document.getElementsByClassName('anyclass')[1]
所以,我发现自己做不到(可能是方法不对)
$('.anyclass')[1]
但我得到了一个 DOM 元素!所以逻辑上我试过了
$('.anyclass')[1][0]
它不起作用 'TypeError: $(...)[0][0] is undefined' 任何人都可以解释为什么?谢谢!
var elm = document.createElement("div");
var jelm = $(elm); //convert to jQuery Element
var htmlElm = jelm[0]; //convert to HTML Element
我觉得你需要.eq(index)
var secondElement = $('.anyClass').eq(1); //jQuery object
var domElement = secondElement[0]; //DOM element
console.log(secondElement, domElement)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class='anyClass'>1</div>
<div class='anyClass'>2</div>
:first
伪class相当于:eq( 0 )
。也可以写成:lt( 1 )
。虽然这只匹配一个元素,但 :first-child 可以匹配多个元素:每个父元素一个。
此处
$('.anyclass:first)
快速示例:
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$($(".t")[1]).css("background-color", "yellow");
});
</script>
</head>
<body>
<p class=t>This 1.</p>
<p class=t>This 2.</p>
<p class=t>This 3.</p>
</body>
</html>
'
$('.anyclass')[0].attr("src"); you can use like this .
在您发表评论后:
$(".anyclass")[1]
是一个 DOM 元素而不是 jquery 对象。只需将其包装为 jquery $($("td")[1]).width()