聚合物。 Paper-submenu触发器适用于纸张项目中的两个元素

时间:2016-08-19 12:31:38

标签: javascript html angular polymer

我需要在Polymer的纸张菜单/子菜单中提供一些帮助。我的任务是制作基于纸张菜单的树形结构的导航面板。所以,我有" menu-trigger"在paper-item标签中的类,我在paper-item中有两个元素:icon和链接,点击两个不同的事件。当我点击图标时,它会折叠另一个纸质菜单,当点击链接时它会执行另一个事件,但现在它们都会折叠另一个菜单。我该如何分开这些事件?

PS:对不起我的英语:)

  <paper-menu>
    <paper-submenu>
      <!--Problem starts here-->
      <paper-item class="menu-trigger">
        <i class="material-icons">&#xE2C7;</i>
        <a (click)="someAction()">Test 1</a>
      </paper-item>
      <!--And finishs here-->
      <paper-menu class="menu-content sublist">
        <paper-submenu>
          <paper-item class="menu-trigger">
            <i class="material-icons ">&#xE313;</i>
            <a>Test 1.1</a>
          </paper-item>
          <paper-menu class="menu-content sublist2">
            <paper-item>
              <a>Test 1.1.1</a>
            </paper-item>
            <paper-item>
              <a>Test 1.1.2</a>
            </paper-item>
          </paper-menu>
        </paper-submenu>
        <paper-item>
           <a>Test 1.2</a>
        </paper-item>
        <paper-item>
           <a>Test 1.3</a>
        </paper-item>
      </paper-menu>
    </paper-submenu>
  </paper-menu>  

3 个答案:

答案 0 :(得分:0)

只需使用一些on-tapon-click个事件和一些j来显示/隐藏子菜单。

答案 1 :(得分:0)

所以,如果有人对这个问题的某些解决方案感兴趣:我在css中使用了event.stopPropagation();,但我认为这不是最好的主意,所以这就是为什么我决定使用<?xml version="1.0" encoding="utf-8"?> <configuration> <system.serviceModel> <bindings> <wsHttpBinding> <binding name="PProxyEndpoint"> <security> <message clientCredentialType="UserName" establishSecurityContext="false" /> </security> </binding> <binding name="PProxyEndpointSvcCertSpecified"> <security> <message clientCredentialType="UserName" negotiateServiceCredential="false" establishSecurityContext="false" /> </security> </binding> </wsHttpBinding> </bindings> <client> <endpoint address="http://p-cer.test.ca/PService.svc" binding="wsHttpBinding" bindingConfiguration="PProxyEndpoint" contract="IPService" name="PProxyEndpoint"> <identity> <certificate encodedValue="XXXXXXXXXXXXXXXXXX............" /> </identity> </endpoint> <endpoint address="http://p-cer.test.ca/PService.svc/SvcCertSpecified" binding="wsHttpBinding" bindingConfiguration="PProxyEndpointSvcCertSpecified" contract="IPService" name="PProxyEndpointSvcCertSpecified"> <identity> <certificate encodedValue="XXXXXXXXXXXXXXXXXX............" /> </identity> </endpoint> </client> </system.serviceModel> </configuration>

答案 2 :(得分:0)

点击纸张菜单/子菜单时,触发的事件很少。

iron-activate :(已选中或已取消选择)

iron-deselect:取消选择

iron-items-changed:选择项目更改

iron-select:选择事件

这些活动有两个参数活动选定项目) 根据您的要求,选择 selecteditem 并应用您的逻辑

更多信息:https://elements.polymer-project.org/elements/paper-menu