使用javascript/jquery访问阴影DOM属性(聚合物)
Access shadow DOM properties (polymer) with javascript/jquery?
我目前正在使用聚合物的核心支架&创建带有内容区域的页眉/侧边栏。我目前遇到的问题是无法访问content元素的某些属性,例如scrollTop。(因为我需要访问的实际scrollTop属性是在影子DOM中定义的。)
这与我正在使用的懒惰加载jquery插件冲突。插件正在检查窗口。scrollTop但是改变插件来检查我的内容的scrollTop(滚动而不是窗口)不会有任何影响,因为scrollTop是"隐藏"在阴影DOM。
是否有一种方法来访问影子DOM元素?我唯一能找到的是访问影子DOM对象你自己创建createShadowroot(或无论它被称为什么),但我似乎找不到任何关于如何访问已经存在/创建的影子根的参考。
示例代码<core-scaffold>
<core-header-panel navigation flex mode="seamed">
<core-toolbar>
<!--fixed toolbar-->
</core-toolbar>
<core-menu theme="core-light-theme">
<core-item icon="settings" label="item1"></core-item>
<core-item icon="settings" label="item2"></core-item>
</core-menu>
</core-header-panel>
<div tool>
<!--fixed header-->
</div>
<div id="content">
<!-- get scrollTop of content? -->
</div>
</core-scaffold>
每个有ShadowDOM的元素也有一个描述底层元素的shadowRoot
属性(作为document
)。
e。g, some_element.shadowRoot.firstElementChild
您也可以使用querySelector
访问影子根,例如:
document.querySelector('core-scaffold::shadow .someclass')
会在第一个core-scaffold
的影根中找到第一个包含someclass
的元素。
相关文章:
- 聚合物绑定条件属性和求值属性
- 聚合物 - 在重复模板中获取数据绑定属性值
- 如何从不同的元素访问聚合物元素中的属性
- 聚合物通过父对象观察子属性
- 如何观察聚合物元素属性值从索引.html的变化
- 聚合物节点到元素属性
- 聚合物中的“观察者”与“通知”(在属性块中)与“观察者”与“侦听器”之间的区别
- 按动态属性值选择聚合物元素
- 无法访问函数内的聚合物属性
- 如何触发属性聚合物中的更改功能
- 如何为聚合物元素添加功能属性
- 聚合物获取过滤器返回的对象的属性
- 聚合物 1.x:预加载元素属性
- 聚合物 1.x:预加载元素属性
- 聚合物 1.0 - 更改属性值未在 DOM 重复中更新
- 在聚合物中创建自定义元素的属性为零
- 如何将对象文本作为聚合物属性传递
- 为什么聚合物不;t读取行为属性
- 聚合物生命周期:为什么属性尚未从'附件'回调
- 使用javascript/jquery访问阴影DOM属性(聚合物)