如何在Polymer中从JavaScript访问自定义CSS属性?

时间:2016-09-10 20:12:39

标签: javascript html css polymer

我正在使用Polymer,并希望能够在JavaScript中获得自定义CSS属性的值。

我以为我能够使用this.customStyle["--my-style"]来做到这一点但事实并非如此(结果是undefined)。你可以看到下面的元素:

<dom-module id="my-element">
  <template>
    </style>
    <div>Some Content</div>
  </template>

  <script>
    Polymer({
      is: "my-element",
      attached: function () {
        console.log(this.customStyles["--my-style"])
      }
    })
  </script>
</dom-module>

无论如何,我可以在JavaScript中访问此自定义样式 - 我可以设置该值,而不是检索它。

1 个答案:

答案 0 :(得分:1)

angular.module("app").controller('homeController',['httpService', '$timeout', function (httpService, $timeout) { var vm = this; vm.init = function () { httpService.get('home/GetHomeData', {}).then(function(res) { vm.data = res.data; }).then(function(){ $timeout(function(){ //jQuery code to create carousels, $timeout ensures that the code will run in next $digest cycle so after DOM from ngRepeat get's created }) }) } vm.getFeaturedModels = function(){ return vm.data.FeaturedProducts; } }]); 是一个空对象,您在更新属性时会填充该对象。如果您需要检索任何值,customStyles已提供另一个api getComputedStyleValue

&#13;
&#13;
Polymer
&#13;
&#13;
&#13;