【问题标题】:Combine two selectors in slice().hide() function - jQuery在 slice().hide() 函数中组合两个选择器 - jQuery
【发布时间】:2017-07-26 18:48:31
【问题描述】:

如何将其合并为一个语句?元素没有 id 或唯一名称,只是脱离了选择器本身。

$("article").slice(1).hide();
$("main h1").slice(1).hide();

* 编辑 *

GaetanoM 的回答奏效了……

$('article:gt(0), main h1:gt(0)').hide()

我尝试了类似于 Matiboux 建议的方法(显然,他/她的建议也是如此)......

$("article, main h1").slice(1).hide();

后续问题 - 有人可以解释为什么那里的第二个不起作用吗?似乎更直接。它完全隐藏了这篇文章。

【问题讨论】:

  • 第二个不起作用,因为切片仅适用于 (1) 元素。您可以将其视为首先找到所有元素,然后将它们视为 1 组。仅从该组中获取第一个。第一个隐藏了除第一个之外的所有内容。秒只隐藏第一个。我猜你只有 1 篇文章。

标签: jquery hide slice


【解决方案1】:

您可以使用:gt() Selector 选择combine 并记住.slice( start ) 的含义:

将匹配元素集减少为由一系列索引指定的子集。该参数是一个整数,表示从0开始的位置。

sn-p 是:

$('article:gt(0), main h1:gt(0)').hide()
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>



<article>
    articol 1
</article>
<article>
    articol 2
</article>
<article>
    articol 3
</article>


<main>
    <h1>h1</h1>
</main>
<main>
    <h1>h2</h1>
</main>
<main>
    <h1>h3</h1>
</main>

【讨论】:

    【解决方案2】:

    我认为像$("article, main h1").slice(1).hide(); 这样的东西应该可以解决问题。这类似于 CSS 规则。

    【讨论】:

    • 如果有 2 个元素,
      之一和

      之一。这只会影响第一个。

    猜你喜欢
    • 1970-01-01
    • 2012-05-15
    • 1970-01-01
    • 2023-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-22
    • 2012-10-15
    相关资源
    最近更新 更多