2016-05-11 2 views
1

Ich habe ein Kontextmenü, das auf meiner Angular Material Website erscheint. Wenn das MD-Menü angezeigt wird, wird automatisch ein MD-Hintergrund erstellt. Wenn ich außerhalb des md-Menüs klicke, wird der md-Hintergrund angeklickt und das md-Menü geschlossen.Wie bekomme ich ein ng-click-Ereignis hinter einem md-Hintergrund in Angular Material

Ich möchte diesen ng-Klick tatsächlich erhalten. Zum Beispiel, wenn ich eine MD-Taste auf meiner Webseite habe und ein MD-Menü erscheint, wenn ich auf die MD-Taste klicke, wird die Taste nicht ausgelöst, weil ich auf den MD-Hintergrund klicke. Ich muss im Wesentlichen zweimal klicken, einmal um das md-Menü zu schließen und nochmal auf den Button zu klicken.

Ich möchte wissen, ob ich diesen Klick über den md-Hintergrund hinaus verbreiten und auf der MD-Schaltfläche erhalten kann. Ansonsten möchte ich wissen, wie man den md-backdrop komplett deaktiviert.

+0

Sie können Ereignis von md-Taste von Event-Handler von md-Hintergrund auslösen klicken, wenn Sie –

+0

benötigen @JahirulIslamBhuiyan Es ist schwer zu wissen, ist, ob die md-Schaltfläche geklickt wurde oder nicht. Ich möchte nicht davon ausgehen, dass wenn jemand auf den md-backdrop klickt, er auf meine md-Taste klickt, da sich mehrere Buttons an verschiedenen Positionen befinden. Ich kann den Event-Handler des md-backdrop verwenden, der mir ein Klick-Ereignis mit einer x- und y-Position gibt, aber gibt es eine elegante Möglichkeit, diese Information zu verwenden, um zu erkennen, ob der Benutzer tatsächlich auf die Schaltfläche geklickt hat? Ist die einzige Möglichkeit, die X-, Y- und Größeninformationen der einzelnen Schaltflächen zu durchsuchen und zu prüfen, ob das x, y-Ereignis auf den md-Hintergrund klickt? – user2012741

Antwort

0

Am Ende habe ich dies behoben, indem ich den Z-Index-Wert des MD-Hintergrunds geändert habe. Ich musste die css-Klasse editieren, die sich auf den md-backdrop bezog und den z-index auf eine niedrigere Zahl als die md-Taste setzen, die ich drücken wollte.