Menü ausblenden, wenn Sie an eine andere Stelle als das Menü klicken

8

Ich habe ein Menü, das erscheint, wenn ich auf ein Symbol klicke. Momentan kann ich es schließen, indem ich auf das Symbol 'Schließen' klicke, aber ich möchte es schließen können, indem ich irgendwo außerhalb des Menüs klicke, wenn das Menü sichtbar ist.

Hier ist ein jsFiddle: Ссылка

Zum Beispiel funktioniert das Folgende nicht:

%Vor%

Ich habe ähnliche Fragen wie jQuery: Element bei Klick irgendwo anders außer dem Element ausblenden und Wie erkenne ich einen Klick außerhalb eines Elements? , konnte aber die Lösungen nicht für mich arbeiten lassen.

EDIT: Ich frage mich, ob is (": visible") mit jQuery "animate" funktioniert?

    
userden 01.08.2015, 10:48
quelle

5 Antworten

1

Verwenden Sie CSS-Attribut left zu erkennen, ob das Menü statt :visibe sichtbar ist, weil es bietet Arbeit mit Chrome finden Sie unter jquery .is (": visible ") funktioniert nicht in Chrome .

Sie müssen nur feststellen, ob das Menü sichtbar ist (benutzen Sie das css-Attribut links), wenn das Menü css left=0px bedeutet, dass es sichtbar ist, und danach, wenn click außerhalb des Menüs ist oder nicht und so if draußen schließe es.

Werfen Sie einen Blick auf Ihre Aktualisierung Geige funktioniert nur durch die Zugabe von folgendem handle das Erkennen von Außenklick:

JS:

%Vor%     
Zakaria Acharki 01.08.2015, 11:18
quelle
3

Aufruf schließen Funktion an beliebiger Stelle auf Fenster klicken. Und nutze Ereignisblasen. Ich hatte es aktualisieren seine jsfiddle Link ist

%Vor%     
rahul chaurasia 01.08.2015 11:22
quelle
2

Versuchen Sie Folgendes: Ссылка

html

%Vor%

css

%Vor%

jQuery

%Vor%

Ein anderes einfaches Beispiel: Ссылка

    
wishab 01.08.2015 11:10
quelle
2

Ich schlage vor, dass Sie ein Ereignis beim Klicken auf ein Dokument binden, nachdem das Menü angezeigt wurde, das Ereignis, das sicherstellt, dass jeder Klick außerhalb des Menüs es schließt.

%Vor%

Hier müssen Sie das Ereignisobjekt auswerten und was es auslöst - welches Element, wenn es sich innerhalb des Menüs befindet (abgesehen von der Schließen-Schaltfläche), dann kein Nufern, wenn es draußen ist - dann schließen Sie das Menü. Alle abschließenden Sachen werden zur getrennten Funktion gebracht. vergessen Sie auch nicht, diesen Handler nach dem Schließen vom Dokument zu trennen

Ссылка

Arbeitsdemo

    
GL.awog 01.08.2015 11:19
quelle
0

%Vor% %Vor% %Vor%
    
Farhad Manafi 01.08.2015 11:34
quelle

Tags und Links