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

Webcomponent Polyfill元素缓存:重置/清空?

  •  0
  • Doug  · 技术社区  · 6 年前

    我现在使用的是FireFox+网络组件Polyfill。随着AJAX调用提供不同的数据集(本质上是一个提供相关主题链接的搜索表单),Webcomponent也会发生变化。不过,我正在尝试编写一些JavaScript来查询在ShadowDOM中显示的AJAX结果。

    我的问题是,当我运行查询时,如果旧数据集大于新结果,我将得到新结果+旧搜索中元素的剩余长度。

    Search1: "Teenage Mutant Ninja Turtles"
    Resulting NodeList: ['Teenage', 'Mutant', 'Ninja', 'Turtles']
    

    接着再搜索一次。。。

    Search2: "Inspector Gadget"
    Resulting NodeList: ['Inspector', 'Gadget', 'Ninja', 'Turtles']
    
    Search3: "Warner Brother's Tiny Toon Adventures"
    Resulting NodeList: ['Warner', 'Brother\'s', 'Tiny', 'Toon', 'Adventures']
    
    Search4: "Freakazoid"
    Resulting NodeList: ['Freakazoid', 'Brother\'s', 'Tiny', 'Toon', 'Adventures']
    

    我的查询代码如下:

    var nodes = document.querySelector('search-component').shadowRoot.querySelectorAll('div.result');
    

    有没有一种方法可以查询polyfilled webcomponent nodelist并只获取当前时刻存在的DOM元素(忽略以前可能存在的元素)?

    0 回复  |  直到 6 年前