使用jquery在多个div中选择子链接时出错

时间:2012-12-13 08:14:00

标签: jquery filter each

我有4个div,类v_block。每个人都有2个与班级more的链接。我试图仅在每个div中定位第一个链接。这是代码http://jsfiddle.net/AAznD/2/

在实际示例中(它是动态显示的),我正在尝试更改链接的背景图像,使第一个显示宽边框,第二个显示单词,如您在快照链接中看到的那样以下

它定位div中“class more”的所有链接,但它在jsfiddle上运行良好

$(".v_block").each(function() {
  $(".v_block a.more:first-child").css({"background-image":"url(images/wide_more.gif)","width":"338px","height":"14px","left":"-23px"});
});

以下是快照:http://img90.imageshack.us/img90/8687/capturemrb.jpg

  

http://img90.imageshack.us/img90/8687/capturemrb.jpg

1 个答案:

答案 0 :(得分:2)

您希望在this中使用each,因为this将是该循环迭代的特定div;然后使用find查找a.more中中的div元素

Updated Fiddle

$(document).ready(function(e) {
    $(".v_block").each(function() {
        $(this).find("a.more").filter(':first').css({"color":"#d31577","text-decoration":"none"});
    });
});

您也可以使用first()代替filter(":first")

$(document).ready(function(e) {
    $(".v_block").each(function() {
        $(this).find("a.more").first().css({"color":"#d31577","text-decoration":"none"});
    });
});