Polymer 聚合:按钮单击触发父容器单击事件

Polymer 聚合:按钮单击触发父容器单击事件,polymer,Polymer,我正试图开发一个基于谷歌收件箱的可折叠列表 我已经创建了一个聚合物元素列表,其中每个元素都是一种纸张材料,里面有一个铁折叠。 熨斗折叠包含数据和几个纸张按钮 单击父纸张材质时,我需要显示/隐藏元素 这非常有效,但不幸的是,在点击熨斗内部的纸张按钮(例如,发送按钮)后,该事件也会触发 我尝试将event.stopPropagation()添加到孩子的按钮处理程序中,但当单击按钮时,熨斗折叠仍然会折叠 有什么想法吗 父容器的代码: <paper-material id="papercontai

我正试图开发一个基于谷歌收件箱的可折叠列表

我已经创建了一个聚合物元素列表,其中每个元素都是一种纸张材料,里面有一个铁折叠。
熨斗折叠包含数据和几个纸张按钮

单击父纸张材质时,我需要显示/隐藏
元素

这非常有效,但不幸的是,在点击熨斗内部的纸张按钮(例如,发送按钮)后,该事件也会触发

我尝试将event.stopPropagation()添加到孩子的按钮处理程序中,但当单击按钮时,熨斗折叠仍然会折叠

有什么想法吗

父容器的代码:

<paper-material id="papercontainer" elevation="1" class="container padded" animated style="border-radius:4px;">
   <div class="container">
        <div class="container flex-start-justified">
            <div class="flexchild">
                <h4 class="smaller-margin">Bill Gates</h4>
                <p class="smaller-margin">bill@gates.com</p>
                <p class="paper-font-caption smaller-margin">Date received: 01/01/2015</p>
            </div>
            <p>
                    <paper-button raised on-click="send">Send</paper-button>
            </p>
        </div>

<!--Code for iron-collapse (child): -->

        <div class="container flex-horizontal">
                <iron-collapse id="collapse" class="flexchild">
                    <div class="flexchild collapse-content" style="margin-top:10px;">
                         <paper-button>Edit Mail</paper-button>

                     </div>
                 </iron-collapse>
        </div>

    </div>
</paper-material>

我遵循了《事件》教程

根据我的理解,“tap”使整个元素都在监听tap事件


删除该处理程序并将我自己的单击事件处理程序分配给父纸张材质容器,并在我孩子的按钮事件结束时调用e.stopPropagation()后,它就开始工作了。

我已经按照

根据我的理解,“tap”使整个元素都在监听tap事件


删除该处理程序并将我自己的单击事件处理程序分配给父纸张材料容器,并在我的孩子的按钮事件结束时调用e.stopPropagation()后,该处理程序开始工作。

请显示一些代码。我提供了一些代码。一般来说,单击时,以及单击内部的发送按钮时,熨斗折叠显示/隐藏。如何避免这种情况?看起来不像iron collapse在监听点击事件。您确定自己没有调用
切换
吗?。
toggle()
从何处调用?我已经找到了答案,请参见下面的答案。谢谢您的帮助,先生。请出示一些代码。我已经提供了一些代码。一般来说,单击时,以及单击内部的发送按钮时,熨斗折叠显示/隐藏。如何避免这种情况?看起来不像iron collapse在监听点击事件。您确定自己没有调用
切换
吗?。
toggle()
从何处调用?我已经找到了答案,请参见下面的答案。谢谢你的帮助,先生。
Polymer({           
        is: 'zapytania-result-element2',

        toggle: function() {
            this.$.collapse.toggle();
        },

        listeners: {
            'tap': 'regularTap'
        },

        regularTap: function(e) {
            console.log('toggle iron-collapse');
            if(this.$.collapse.opened) {
                this.$.collapse.hide();
                this.$.papercontainer.elevation = 1;
            } else {
                this.$.collapse.show();
                this.$.papercontainer.elevation = 5;
            }
        },
       send: function() {
           sendMail();
       }
}