如何在JS / JQuery中使用second / third div而不在此元素上使用class或id?
<div class="parentcontainer">
<div></div>
<div></div>
<div></div>
<div></div>
</div>
还有没有可能通过数字(顺序)找出子元素是什么?像:
<div class="parentcontainer">
<div class="hey"></div>
<div class="hey"></div>
<div class="hey"></div>
<div class="hey"></div>
</div>
$('.hey').click(function(){
// what element by number is that?
});
答案 0 :(得分:1)
使用:eq()
var secondInnerDiv = $('div div:eq(1)');
var thirdInnerDiv = $('div div:eq(2)');
$('div div:eq(1), div div:eq(2)').css('background', 'green');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<div class="parentcontainer">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
</div>
或 :lt()/gt()
var secondAndThirdInnerDiv = $('div div:gt(0):lt(2)');
$('div div:gt(0):lt(2)').css('background', 'green');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<div class="parentcontainer">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
</div>
<强>更新强>
使用index()
$(this).index()
$('div div').click(function(){
console.log($(this).index());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<div class="parentcontainer">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
</div>
答案 1 :(得分:0)
你可以解决这个问题:
答案 2 :(得分:0)
这就是我用的例子:
div > div:first-child {
background-color:yellow;
}
请注意div > div
选择所有直接div儿童。对于演示,我使用:first-child
答案 3 :(得分:0)
以下是提供其中一种方法
的提示的代码var allDivs = $(".parentcontainer > div");
var secondDiv = $(allDivs.get(1));
var thirdDiv = $(allDivs.get(2));
答案 4 :(得分:0)
答案 5 :(得分:0)
// return position
$('.parentcontainer').on('click', '.hey', function(){
alert($(this).index());
});
// select nth with eq
$('.parentcontainer').find('.hey').eq(2).css('background', 'red');