Simile a this domanda, il mio HTML assomiglia a questo:Javascript: quale argomento viene chiamato con la funzione specificata nell'evento onload del corpo?
<body id="body" onload="loader()">
</body>
ho sempre presumo, come this doc dice che onload è dato senza argomenti. Tuttavia, ho chiamato l'argomento, e ha fatto un po 'di ispezione approfondita, e ha scoperto che ho ricevuto un oggetto simile a questo:
{originalTarget : DOM,
preventCapture : function,
target : DOM,
cancelable : Bool,
currentTarget : DOM,
timeStamp : Int,
bubbles : Bool,
type : String,
eventPhase : Int,
preventDefault : function,
initEvent : function,
stopPropagation : function,
CAPTURING_PHASE : Int,
AT_TARGET : Int,
BUBBLING_PHASE : Int,
explicitOriginalTarget : DOM,
preventBubble : function,
isTrusted : Bool,
MOUSEDOWN : Int,
MOUSEUP : Int,
MOUSEOVER : Int,
//... (more constants)
}
Qualcuno ha idea di cosa che cosa è, o quale potrebbe essere il suo nome di classe?
+1 Nice detective work :) – Sampson
Credo che qualsiasi funzione chiamata da qualsiasi gestore di eventi (cioè non solo 'body.onload') ottiene questo oggetto come primo argomento. –
@Paul: Ho pensato che c'erano differenze tra le implementazioni del browser e il modo in cui gli eventi sono stati collegati (utilizzando i modelli di registrazione degli eventi tradizionali o avanzati). Ma potrei essere completamente sbagliato (e troppo stanco per cercarlo al momento). –