没有class / id的嵌套jquery选择器

时间:2015-04-24 07:28:21

标签: jquery

我在其他开发者的已经制作的网站上工作。在他的网站中,他有一个带有3个href标签但没有id / class的div:

        <div id="Menu_1">

            <a href="" target="_blank">
                <img src="img/common/btn_1.png" alt="">
            </a>
            <a href="#" target="_blank>
                <img src="img/common/btn_2" alt="">
            </a>
            <a href="#" target="_blank>
                <img src="img/common/btn_3.png" alt="">
            </a>
       </div>

我必须在他的网站上使用jquery而不改变他自己的html / css。

我试试

$("#Menu_1 a img:first-child").click(), 
$("#Menu_1 a img:last-child").click() 
// don't know how to select the middle button

但他们都没有工作。我的nexted jquery选择器有什么问题吗?

5 个答案:

答案 0 :(得分:1)

您可以使用find()功能和eq()选择器来查找特定的img,如下所示:

$('#Menu_1').find('a:eq(1)').find('img');

您的方式也适用于所有3个img代码,但要看到它有效,首先您必须在_blank之后关闭html中的双引号:

<a href="#" target="_blank">

答案 1 :(得分:1)

您可以使用.eq(#)选择选择器返回的任何元素(基于0)

&#13;
&#13;
$(document).ready(function() {
  $('.wrapper a').eq(0).css('color', 'red');
  $('.wrapper a').eq(1).css('color', 'blue');
  $('.wrapper a').eq(2).css('color', 'green');
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="wrapper">
  <a href='#'>First</a>
  <a href='#'>Second</a>
  <a href='#'>Third</a>
</div>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

您走在正确的轨道上,但它不是nth-child的图片,而是a标签。

怎么样:

$("#Menu_1 a:first-child img").click()
$("#Menu_1 a:nth-child(2) img").click()
$("#Menu_1 a:last-child img").click()

答案 3 :(得分:0)

你可以这样做:

$("#Menu_1 a:nth-child(2) img").click();

答案 4 :(得分:-1)

您可以使用nth-child选择器:

$("#Menu_1 a:nth-child(2) img").click()