2015-06-03 40 views
1

在Polymer0.5我可以做类似访问shadowRoot:如何为CSS样式(Polymer1.0)

domReady: function(){ 
    print(this.shadowRoot); 
} 

这将打印出来的HTML中shadowRoot。


当我做同样的事情在Polymer1.0:

ready: function(){ 
    print(this.shadowRoot); 
} 

输出null


更具体地说,我用做访问CSS属性的元素:

$(this.shadowRoot).find('.some-class').css('height', amount + 'px'); 

,但我在努力寻找如何做到这一点的Polymer1.0,因为shadowRoot为空。

+1

据我所知,他们更换了影子DOM与 '黑幕DOM'。我还没有使用它,但根据[文档](https://www.polymer-project.org/1.0/articles/shadydom.html),你可以访问阴暗的DOM作为'var arrayOfNodes = Polymer.dom (x-element).children;' – jdepypere

回答

1

感谢jdepypere的提示。事实证明,所有样式属性都在node属性的style属性中。

所以调整高度:

Polymer.dom(this.$.scrollArea).node.style.height = '100px'; 
+0

根据您的使用情况,您可能还想看看Polymer构建的'transform'和'translate3d'实用函数:https://www.polymer-project.org/1.0/ docs/devguide/utility-functions.html和https://css-tricks.com/almanac/properties/t/transform/ – Zikes