首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将eventListener添加到聚合物中的谷歌地图元素的正确位置在哪里?

将eventListener添加到聚合物中的谷歌地图元素的正确位置在哪里?
EN

Stack Overflow用户
提问于 2015-07-29 12:26:07
回答 1查看 145关注 0票数 1

我定义了以下元素:

代码语言:javascript
复制
<dom-module id="my-element">

  <style>
    :host {
      display: block;
    }
    google-map {
      height: 600px;
    }
  </style>

  <template>
    <geo-location highAccuracy watchpos latitude="{{lat}}" longitude="{{lng}}"></geo-location>
    <google-map id="myMap" latitude="{{lat}}" longitude="{{lng}}" dragEvents="true" zoom="16"></google-map>
    <br>
    <small>Latitude: <b>{{lat}}</b></small><br>
    <small>Longitude: <b>{{lng}}</b></small><br>
  </template>

  <script>
    (function() {
      Polymer({
        is: 'my-element',
        ready: function() {
          this.$.myMap.addEventListener('google-map-dragend', function(e) {
            alert('Map has moved.');
          });
        }
      });
    })();
  </script>

</dom-module>

但是,事件侦听器根本不工作。我试过在不同的地方打电话,但都没有成功。我希望每次用户拖放地图时,事件侦听器都会调用一个函数。

我正在使用聚合物1.0与埃里克·比德尔曼卓越的地理定位组件。这是google-map组件的文档

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-29 12:38:03

事实证明,事件侦听器位于正确的位置,因为只有当页面上的所有组件都已完成加载时,ready属性才会触发。

我犯的错误实际上是一个惯例问题,因为聚合物文档中的属性被翻译成代码,使用'-'es来分隔单词。我记得在文档中的某个地方看到属性应该用HTML中的破折号分隔:

dragEvents="true"应该是drag-events="true"

现在它很好用。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31700355

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档