Javascript 纸波纹鼠标向下事件处理程序向下操作覆盖

Javascript 纸波纹鼠标向下事件处理程序向下操作覆盖,javascript,polymer,polymer-1.0,paper-elements,Javascript,Polymer,Polymer 1.0,Paper Elements,聚合物1.1 在中,它们具有mouseDown事件处理程序: /** @param {Event=} event */ downAction: function(event) { var xCenter = this.containerMetrics.width / 2; var yCenter = this.containerMetrics.height / 2; 它在文件中指出: paper ripple会监听“mousedown”和“mouseup”事件,因此当触

聚合物1.1

在中,它们具有
mouseDown
事件处理程序:

  /** @param {Event=} event */
  downAction: function(event) {
    var xCenter = this.containerMetrics.width / 2;
    var yCenter = this.containerMetrics.height / 2;
它在文件中指出:

paper ripple会监听“mousedown”和“mouseup”事件,因此当触碰paper ripple时会显示连锁反应。您还可以取消默认行为并手动将向下和向上操作路由到ripple元素

但是,在我的自定义元素中,我无法重写此处理程序:

        <paper-ripple
          fit
          id="ripple"
          initial-opacity="0.95"
          opacity-decay-velocity="0.98">
        </paper-ripple>
      </section>
    </template>
  </template>

  <script>
    Polymer({
      is: "portfolio-page",
     ...
      downAction: function(e) {
        console.log('sssssssssssssssssssssssss');
      },
      upAction: function(e) {
        this.$.ripple.upAction();
      }

聚合物({
是:“公文包页面”,
...
下行:功能(e){
console.log('sssssssssss');
},
行动:功能(e){
这是$.ripple.upAction();
}
当我通过点击我的元素来诱导纸张波纹的动作时,我没有得到任何控制台输出


如何覆盖
paper-ripple
侦听的
mouseDown
的默认
downAction
处理程序,如中所述?

最有可能的文档假设应该添加侦听器,如

listeners: {
    'up' : 'upAction',
    'down' : 'downAction',
}
您仍然可以覆盖这些方法,但ripple元素可能不是这样使用的:

ready: function(){
   this.ripplesDownAction = this.$.ripple.downAction.bind(this.$.ripple);
   this.$.ripple.downAction = this.downAction.bind(this);
},

downAction: function(e) {
    console.log('sssssssssssssssssssssssss');
    this.ripplesDownAction();
}

我在添加侦听器时遇到的问题是,已经有一个侦听器了……为了提高效率,我不想再添加一个。我很可能会查询shady元素,只是修改现有的
downAction
方法。我不认为文档有意这样做,因为它们声明
覆盖
downAction