Bedeutung von evt = (evt) ? evt : Fenster.event
Hallo was bedeutet dieses javascript-snippet bedeutet.(evt) Teil ist so verwirrend.. evt ist kein boolean. Wie es funktioniert?
function checkIt(evt) {
evt = (evt) ? evt : window.event
var charCode = (evt.which) ? evt.which : evt.keyCode
}
wenn
Ursache evt ? evt : Fenster.event ist mehr verwirrend...?
evt
gesetzt ist, dh nicht undefined
oder null
oder false
dann, dass der Ausdruck verwendet evt
oder aber es nimmt die window event
Ursache evt ? evt : Fenster.event ist mehr verwirrend...?
InformationsquelleAutor amesh | 2012-09-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
evt = (evt) ? evt : window.event
ist nur die inlineif
- syntax. Es ist äquivalent zu diesem code:Wenn
evt
ist truthy,evt
werden allein gelassen. Wennevt
ist nicht truthy, es wird ersetzt mitwindow.event
.Richtig, das ist, warum ich sagte, truthy. Wenn
evt
ist nichtnull
,undefined
,NaN
(glaube ich),0
oderfalse
gilt es als truthy. Im Grunde, wennevt
bereits eingestellt, es ist truthy.Jetzt wird Ihr klar..danke..
InformationsquelleAutor Blender
Es ist für Ereignis-Listener.
IE6-IE8 verwendet eine völlig andere Veranstaltung als die Methode W3C-standard.
Wenn ein Ereignis ausgelöst wird, ein W3C-standard-browser übergeben wird, ein Ereignis-Objekt in die callback:
In Ihrem Fall, es ist
keydown
(oder etwas anderes mitkeyCode
).IE nicht unterstützen, stattdessen war es
window.event
war jedes mal aktualisiert, wenn ein Ereignis passiert ist.Damit Ihre Funktion ist zu überprüfen, ob ein object übergeben wurde, in:
Dann der code fragt, wenn
evt.which
vorhanden ist, um zu versuchen, um herauszufinden, wo bekommt man den Schlüsselcode aus.evt.keyCode
ist, was Sie verwenden sollten, für moderne Browser, im Falle vonkeydown
undkeyup
.InformationsquelleAutor Norguard
Zuordnung von Ausdrücken wie bewertet aus rechts nach Links, so bedeutet dies:
evt
hat eine truthy Wert zuweisen, wird dieser Wert wieder aufevt
window.event
unabhängig von dessen Inhaltevt
InformationsquelleAutor jAndy
Bedeutet es: wenn die
evt
parameter einen Wert hat, dann halten Sie den Wert, wenn es nicht einen Wert haben, dann verwenden Siewindow.event
statt.Den
?
und ':' Symbole sind Teil des ternärer if-operator:so über weisen Sie entweder
y
oderz
zuw
je nachdem, obx
ist als Wert true oder false.Wenn die
checkIt
Funktion aufgerufen wurde, ohne den Weg in eineevt
argument alsocheckIt()
dann innerhalb der Funktion dieevt
variable wird den Wertundefined
behandelt wird, alsfalse
innerhalb einer if-Bedingung.InformationsquelleAutor codebox