CSS和JS的范围是否已经与Polymer一起使用?

时间:2014-04-30 13:43:57

标签: polymer

简短的问题:

如果我使用Polymer,它的polyfills范围JS和CSS(例如iframe)?

假设我有一个小部件库,并且我想在同一页面上的多个版本中使用my-widget,我可以将此小部件的每个版本包装在Polymer元素中,这样小部件将安全地执行吗?

谢谢。

1 个答案:

答案 0 :(得分:2)

简短的回答:是的,确定范围,不在单独的背景下的JS

Shadow DOM的核心功能是CSS / DOM封装。在Polymer团队中,我们更倾向于将其视为“范围界定”,因为当大多数人听到封装时,他们会自动思考安全性。 Shadow DOM不是一个安全边界,它从未被设计成这样。它的设计是DOM子树的范围。 JS仍然在主文档的上下文中执行。

也就是说,使用Shadow DOM免费提供CSS范围,每个元素API都带有自定义元素。当您将这些技术组合在一起时(如Polymer所做的那样),您可以获得DOM,CSS, JS的范围。

http://www.polymer-project.org/docs/polymer/polymer.html#propertiesmethods http://www.html5rocks.com/en/tutorials/webcomponents/shadowdom-201/