Jquery 无法访问同级的CSS<;a>;无序列表中的元素

Jquery 无法访问同级的CSS<;a>;无序列表中的元素,jquery,css,properties,Jquery,Css,Properties,我有一个jQuery脚本,它在大部分情况下运行良好。我有一个链接列表,单击该列表可以显示/隐藏特定的DIV元素。当我点击一个链接时,它的CSS被改变了(链接的颜色变为红色) HTML <ul style="list-style: none;"> <li><a href="#" class="review-link" name="review-1">Click to see Review 1</a></li> <li

我有一个jQuery脚本,它在大部分情况下运行良好。我有一个链接列表,单击该列表可以显示/隐藏特定的DIV元素。当我点击一个链接时,它的CSS被改变了(链接的颜色变为红色)

HTML

<ul style="list-style: none;">
    <li><a href="#" class="review-link" name="review-1">Click to see Review 1</a></li>
    <li><a href="#" class="review-link" name="review-2">Click to see Review 2</a></li>
    <li><a href="#" class="review-link" name="review-3">Click to see Review 3</a></li>
</ul>
我遇到的问题是将所有其他链接重置为其原始颜色。在我的示例中,我试图将所有其他链接都转换为绿色,但我甚至无法使其工作。也许我不理解jQuery中的“兄弟”属性


下面是一个示例。

查看链接元素没有同级。您需要其父元素的同级

你可以用这样的东西来代替

$(this).parent().siblings().find("a").css("color","green")

.review链接
元素没有同级。您需要其父元素的同级

你可以用这样的东西来代替

$(this).parent().siblings().find("a").css("color","green")

onclick
事件中,在执行任何其他操作之前,设置指向该原始颜色的所有链接

$(document).ready(function(){

    $(".review-link").css("color","green")
    $(".review-link").click(function () {
      var _this=$(this);            
       _this.closest("ul").find(".review-link").css("color","green");
       //your remaining code goes here
    });
});

在执行任何其他操作之前,请在
onclick
事件中设置指向该原始颜色的所有链接

$(document).ready(function(){

    $(".review-link").css("color","green")
    $(".review-link").click(function () {
      var _this=$(this);            
       _this.closest("ul").find(".review-link").css("color","green");
       //your remaining code goes here
    });
});
工作示例查找直接相关的元素。在本例中,
$(this)
指的是单击的
元素,由于每个链接嵌套在
  • 标记中,因此它没有直接的同级

    $(this.parent().sibbines().find('a').css(“颜色”、“绿色”)

    $(this).parent().sibbins().children('a').css(“颜色”、“绿色”)

    会有用的

    您可能需要考虑使用addClass和removeClass,而不是直接使用jQuery更改css,它使标记和脚本的分离更加完整。

    $。sides()
    查找直接相关的元素。在本例中,
    $(this)
    指的是单击的
    元素,由于每个链接嵌套在
  • 标记中,因此它没有直接的同级

    $(this.parent().sibbines().find('a').css(“颜色”、“绿色”)

    $(this).parent().sibbins().children('a').css(“颜色”、“绿色”)

    会有用的


    您可能想看看如何使用addClass和removeClass,而不是直接使用jQuery更改css,因为它使标记和脚本的分离更加完整。

    我想我明白了。没有兄弟元素,但是包含
  • 元素有吗?我想我明白了。没有兄弟元素,但是包含
  • 元素有吗?好主意。我甚至都没想过先把它们都设置成绿色。好主意。我甚至都没想过先把它们都设置成绿色。