Wenn ich vorher an Projekten gearbeitet habe, habe ich oft auf eine Schaltfläche auf der Hauptseite geklickt und rechts wurde ein Div angezeigt, um detaillierte Informationen zum entsprechenden Inhalt auszugeben. Zu diesem Zeitpunkt hoffe ich, die Popup-Ebene zu schließen, wenn die Maus außerhalb der Popup-Ebene klickt. Die Hauptidee ist:
Finden Sie das mit der Maus angeklickte Element
Bestimmen Sie, ob sich dieses Element im angegebenen Bereich befindet. Es dient tatsächlich dazu, festzustellen, ob sein übergeordnetes Element eine Popup-Ebene ist
Wenn nicht, blenden Sie die Popup-Ebene aus. Wenn ja, Es wird keine Operation ausgeführt.
Spezifische Implementierung
Dieser Code erfordert jQuery. Der Code lautet wie folgt:
$(document).mousedown(function(e){ if($(e.target).parent("#info").length==0){ $("#info").hide(); } }) $(document).mousedown(function(e){})
$(document) dient dazu, das gesamte Webseitendokumentobjekt abzurufen, ähnlich wie natives window.ducument
mousedown ist ein Mausereignis, das sich darauf bezieht, wann sich der Mauszeiger über das Element bewegt Die Maustaste wird gedrückt. Ähnliche Ereignisse sind:
Mouseup: beim Entspannen auf dem Element. Maustaste
Mouseover: Wenn sich der Mauszeiger über dem Element befindet
$(z. target)
$(e.target) gibt das Element an, das das Klickereignis erhält.
parent()
$(e.target).parent("#info").length soll das übergeordnete Element des aktuellen Klickereigniselements mit der ID info abrufen.