代码之家  ›  专栏  ›  技术社区  ›  KatieK

为什么在某些情况下组合has()和gt()不起作用?

  •  1
  • KatieK  · 技术社区  · 14 年前

    我想选择任何包含3个以上列表的UL。

    此代码与1.2.6 jquery库一起使用:

    $("ul:has(li:gt(2))")  
    .each( function() {  
    $(this).css("border", "solid red 1px");  
    }); 
    

    但不是1.3.2或1.4.2。

    此代码与1.4.2 jquery库一起使用:

    $('ul').has('li:nth-child(3)').css('border', 'solid red 1px'); 
    

    但不是V1.2.6。

    我的理解是,jquery版本的更改(通常)不需要更改代码。如果您能理解这一点,或者了解jquery库的不同版本之间的差异,我们将不胜感激。谢谢!

    澄清:
    为什么每个版本都使用一个库版本,而不使用另一个库版本?这是一个已知的错误吗(如果是,是哪个错误?)还是我做错了什么?jquery站点上是否存在描述这些问题的文档化bug?我应该将1.4.2行为报告为bug吗?

    1 回复  |  直到 14 年前
        1
  •  1
  •   Community datashaman    7 年前

    这叫做bug。

    我找到了一个相似的 here .