【发布时间】:2016-11-14 00:04:58
【问题描述】:
在以下示例中,我有一个父自定义元素调用子自定义元素。子元素有一个变量 color CSS 属性,用于 p 元素,可以在父 CSS 中定义。
在子元素的JS中,我想读取父元素选择的--custom-color值。在这种情况下,值为yellow。换句话说:当getCustomColor() 方法运行时,我希望控制台日志显示“您的自定义颜色是黄色”。
我在getCustomColor() 方法中放入什么JavaScript 来定义var yourColor?
<style>
my-child-element {
--custom-color: yellow;
}
</style>
<template>
<my-child-element></my-child-element>
</template>
my-child-element.html
<style>
p {
color: var(--custom-color);
}
</style>
<script>
getCustomColor: function() {
var yourColor = // What goes here to obtain the correct value of 'yellow'?
console.log('Your custom color is' + yourColor);
}
</script>
仅供参考:This documentation describes the custom style API。但我似乎找不到对我在这个问题中描述的内容的参考。
【问题讨论】:
-
您是否有在 css 中添加该自定义道具的约束?使用
data-属性并使用.data("custom-color")读取它怎么样。如果这不是一个选项,您可以从元素中读取.css()道具并搜索您的--custom-color道具......如果您可以控制圆顶的渲染方式,我肯定会使用data方法。顺便说一句,该建议仅基于jquery和html函数/元素。我以前没有使用过聚合物 -
您链接的文档实际上提到了它...您只需要检查
this.customStyle['--my-property-name'],它将具有该属性的值 -
我将其作为答案,以便搜索此内容的人更容易找到它
标签: javascript css polymer polymer-1.0 custom-element