在javascript中访问聚合物功能

时间:2014-07-02 06:55:37

标签: javascript cordova polymer

我使用Polymer和Apache Cordova。

我想绑定android的“后退按钮”以关闭对话窗口。 不幸的是,要访问shadowDom,我在Polymer js中。但是,按钮似乎无法通过Polymer'object'访问。

这是我的代码:

<script>
    Polymer({        
            // handle back button
            toggleDialog: function(event, detail, sender) {
                var dialog = this.shadowRoot.querySelector('#askOptionImgDialog');
                dialog.toggle();

            },
            ready: function() {
                document.addEventListener("backbutton", this.toggleDialog(), false);
            }
        });
</script>

什么都不做。

我试过了:

<script>
    Polymer({        
            // handle back button
            toggleDialog: function(event, detail, sender) {
                var dialog = this.shadowRoot.querySelector('#askOptionImgDialog');
                dialog.toggle();

            }
        });
    document.addEventListener("backbutton", ???????.toggleDialog(), false);
</script>

后退按钮似乎已触发,但我不知道如何访问外面的聚合物功能。 有什么想法吗?

感谢。

1 个答案:

答案 0 :(得分:0)

为什么不将所有东西都包装在一个封闭中?

<script>
  Polymer({domReady:
      function() {
        document.addEventListener("backbutton",
            function(event, detail, sender) {
              var dialog = this.shadowRoot.querySelector('#askOptionImgDialog');
              dialog.toggle();
            }, false);
       }
  });
</script>