jQuery解释>>

扫码查看

我正在经历一个预先重写的 jQuery 代码。我无法理解以下代码。

$('body > *:not(#print-modal):not(script)').clone();

最佳答案

此选择器匹配以下任何标签:

  • <body>
  • 的直接子代
  • 没有标识 print-modal
  • 不是 <script> 标签。

  • 然后它使用 .clone() 克隆所有这些元素,尽管 clone() d 对象没有做任何事情,这很奇怪。

    更深入的解释:
    body > * 的意思是“选择所有 <body> 直接后代的元素”,通配符 * 选择每个标签。接下来,两个 :not() 伪类过滤器删除 ID 为 print_modal 的元素以及任何 <script> 标签。

    引用:
  • jQuery's :not() selector
  • Child and sibling CSS selectors(以及 MDN 上的另一个链接)
  • Universal CSS selectors
  • 关于jQuery解释>>,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11458863/

    10-12 17:22
    查看更多