Javascript: С каким аргументом вызывается функция, указанная в событии onload тела? - PullRequest
7 голосов
/ 19 февраля 2010

Похоже на этот вопрос, мой HTML выглядит так:

<body id="body" onload="loader()">
</body>

Я всегда предполагаю, что в этом документе говорит, что onload не имеет аргументов. Тем не менее, я назвал аргумент, сделал несколько глубоких проверок и обнаружил, что получил объект, похожий на этот:

{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)
}

Кто-нибудь имеет представление о том, что это за штука или какое у нее может быть имя класса?

1 Ответ

9 голосов
/ 19 февраля 2010

Это стандартный объект JavaScript DOM Event . Он описывает характер события, которое обрабатывает ваша функция.

ОБНОВЛЕНИЕ В ответ на обсуждение комментария:

Различные браузеры предоставляют объект Event по-разному:

  • IE никогда не передает его в качестве аргумента функции и вместо этого использует свойство window.event.
  • Firefox передаст его в качестве первого аргумента.
  • Хром, кажется, делает и то и другое.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...