【问题标题】:How to find an HTML element inside a Polymer template如何在 Polymer 模板中查找 HTML 元素
【发布时间】:2016-01-08 18:48:33
【问题描述】:

我正在使用 Dart 和 Polymer 1.0.0-rc.9。我有自己的元素(当然在这里简化了):

<dom-module id="something">
 <style>
 </style>

 <template>
   <paper-slider id='myslider'></paper-slider>
   <div id='mydiv'></div>
 </template>
</dom-module>

在 Dart 方面,如果我这样做:

 var div=queryselector('#mydiv')

它返回空值。

然后我设置:

 <template is='dom-bind'>

它找到了。但这会产生错误,也就是说我必须使用简单的模板。

那么如何找到我的&lt;div&gt; 元素?

【问题讨论】:

  • 您的问题没有显示事物之间的联系。您能否添加 index.html 的 HTML 和 something 元素的 Dart 代码。提示:自定义元素的名称中必须包含-,例如&lt;dom-module id="some-thing"&gt;。这段代码var div=queryselector('#mydiv') 是从哪里调用的?
  • 非常感谢。这个对我有用var listdivs = Polymer.dom (this.root) .querySelectorAll('div');欢呼,s

标签: dart polymer-1.0 dart-polymer


【解决方案1】:

使用

var listdivs = Polymer.dom (this.root).querySelectorAll('div');

【讨论】:

    【解决方案2】:

    很可能是因为你在打电话

     var div=queryselector('#mydiv')
    

    在聚合物元素之外。我不确定,但我猜“某物”元素中的 ID 只能从其中获得。

    您最好的做法是在您声明元素的任何位置为其指定一个 ID。

    <something id="something"></something>
    

    然后访问元素的子元素

     var elm =queryselector('#something');
    var children = Polymer.dom(elm).children[1];
    

    【讨论】:

      猜你喜欢
      • 2014-08-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多