Можно ли обнаружить, что ваш код JavaScript выполняется из-за события? - PullRequest
2 голосов
/ 07 марта 2009

Если вы не управляете вызовом своего кода, но хотели бы знать, выполняется ли он обработчиком событий, возможно ли это?

Ответы [ 4 ]

3 голосов
/ 07 марта 2009

Javascript имеет событие объект, который может помочь вам определить источник события.

0 голосов
/ 07 марта 2009

Возможно, вы могли бы сделать это, если бы у вас был способ поиска стека, но это не очень хороший способ сделать это. В этой статье показано, как получить доступ к стеку.

трассировка стека Javascript в любом браузере

0 голосов
/ 07 марта 2009

Гм ...

На самом деле есть только 3 места для размещения javascript (который я знаю): 1) непосредственно внутри тегов скрипта, 2) внутри функции внутри тега скрипта и 3) непосредственно в ссылке или событии (например, .. onClick = "" и т. д.).

В случае (1) он выполняется, как только загружается браузером, и в этом случае он не будет вызван событием. Но во всех остальных случаях единственный способ заставить код выполняться - это событие.

Итак, мне кажется, довольно легко узнать, был ли ваш код выполнен из-за события ...

Теперь, если вы хотите знать конкретный обработчик событий, который выполняет ваш код, это другое дело. : D

0 голосов
/ 07 марта 2009

Вы можете получить сигнал, изменив глобальную переменную. В целях отладки есть предупреждение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...