Javascript 另一个按钮内的按钮不';t在Firefox中工作(棱角材质)
ММ按钮(Javascript 另一个按钮内的按钮不';t在Firefox中工作(棱角材质),javascript,angularjs,angular-material,Javascript,Angularjs,Angular Material,ММ按钮(class=“patternButton”)包含另一个应显示菜单的小按钮(class=“patternMenuBtn”)。以下是标记: <div class="patternsBlock"> <md-button class="patternButton" ng-class="{selected: view.id == selectedViewId, globalView: view.id.indexOf(
class=“patternButton”
)包含另一个应显示菜单的小按钮(class=“patternMenuBtn”
)。以下是标记:
<div class="patternsBlock">
<md-button class="patternButton"
ng-class="{selected: view.id == selectedViewId, globalView: view.id.indexOf(userViewIdPrefix) == -1}"
ng-repeat="view in loadedViews" ng-click="selectPattern(view)">
{{view.name}}
<md-menu md-offset="26 40" ng-show="view.id.indexOf(userViewIdPrefix) != -1">
<md-button class="md-fab md-mini patternMenuBtn" ng-click="openMenu($mdOpenMenu, $event)">
</md-button>
<md-menu-content width="2">
<md-menu-item>
<md-button ng-click="deleteUserView(view, $index)">
<span md-menu-align-target>Delete</span>
</md-button>
</md-menu-item>
<md-menu-item>
<md-button ng-click="openViewPanel(view, $index)">
<span md-menu-align-target>Edit</span>
</md-button>
</md-menu-item>
</md-menu-content>
</md-menu>
</md-button>
</div>
这在Chrome中有效,但在Firefox中不起作用。实际上,
openMenu
函数没有被调用。似乎唯一的解决方案是将按钮一个接一个地放置,而不是一个插入另一个。我的新标记如下所示:
<div class="patternsBlock">
<div class="patternButtonContainer" ng-repeat="view in loadedViews"
ng-class="{selected: view.id == selectedViewId, globalView: view.id.indexOf(userViewIdPrefix) == -1}">
<md-button class="patternButton" ng-click="selectPattern(view)">
{{view.name}}
</md-button>
<md-menu md-offset="26 40" ng-show="view.id.indexOf(userViewIdPrefix) != -1">
<md-button class="md-fab md-mini patternMenuBtn" ng-click="openMenu($mdOpenMenu, $event)"></md-button>
<md-menu-content width="2">
<md-menu-item>
<md-button ng-click="deleteUserView(view, $index)">
<span md-menu-align-target>Delete</span>
</md-button>
</md-menu-item>
<md-menu-item>
<md-button ng-click="openViewPanel(view, $index)">
<span md-menu-align-target>Edit</span>
</md-button>
</md-menu-item>
</md-menu-content>
</md-menu>
</div>
</div>
{{view.name}
删除
编辑
然后我使用CSS使菜单按钮出现在主按钮上
重要信息:将
图案按钮容器上的位置:相对和位置:绝对设置为
。这种方式可以在不影响容器大小的情况下将菜单按钮放在任何地方。我也有同样的问题:
<md-button ng-disabled="true">
<md-button>
</md-button>
</md-button>
但我可以解决这个问题:
<div class="md-button" ng-disabled="true">
<md-button>
</md-button>
</div>
只能使用css类的md按钮,并且可以正常工作。在控制台中检查ev
的值…@RayonDabre,我的应用程序在Firefox中永远不会进入此功能。因此,ev
无法检查。您可以共享演示或小提琴吗?@RayonDabre,最简单的检查方法是转到Angular Material的菜单页,然后在第一个示例中单击“在代码笔上编辑”按钮,并通过附加的
包装
。这在FIrefox中不起作用,但在Chrome中仍然起作用。你为什么要这样做?
<div class="md-button" ng-disabled="true">
<md-button>
</md-button>
</div>