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

查询动画:仅直接子项[重复]

  •  0
  • Maryannah  · 技术社区  · 7 年前

    Array.prototype.map.call(document.querySelectorAll('.program_record_outer'), programBox => {
        return programBox.querySelector('> div')
    });
    

    DomeException:未能在“元素”上执行“querySelector”:“>“div”不是有效的选择器。

    但我相信这样的事情会:

    Array.prototype.map.call(document.querySelectorAll('.program_record_outer'), programBox => {
        return programBox.querySelector(':self > div')
    });
    

    :self 不是一件事,而且 :root 指的是文档根,那么如何指的是当前上下文?

    0 回复  |  直到 9 年前
        1
  •  34
  •   gyre Shayan C    9 年前

    在一些最新的浏览器中( Chrome, Firefox 32+, Opera 15+, and Safari 7.0+ :scope querySelector querySelectorAll :

    let result = [...document.querySelectorAll('.program_record_outer')].map(
      programBox => programBox.querySelector(':scope > div')
    )
    
    console.log(result)
    <div class="program_record_outer">
      <div>1</div>
    </div>
    <div class="program_record_outer">
      <div>2</div>
    </div>
    <div class="program_record_outer">
      <div>3</div>
    </div>
    推荐文章