#javascript #ajax #debugging
#javascript #аякс #отладка
Вопрос:
У меня есть много сценариев отслеживания JS, запущенных на моем сайте. Один из них вызывает 404 ошибки, внедряя неисправный тег скрипта после загрузки страницы, например:
<script src="1234" />
<script src="[object DOMStringMap]" />
Есть ли простой способ отслеживать вызовы dom для любой из этих модификаций? Некоторые вызовы js используют функции тайм-аута для отложенного выполнения … так что это настоящая неразбериха, с которой приходится сталкиваться в отладчике.
Ответ №1:
Вы можете временно перезаписать его, выдать ошибку и посмотреть трассировку стека: http://jsfiddle.net/pimvdb/b5ayw /.
Element.prototype.appendChild = function() {
try {
throw new Error;
} catch(e) {
console.log(e.stack);
}
};
Комментарии:
1. все еще не делает трюк для меня: ( … я также использую head.js для отложенной загрузки скрипта … что также усложняет ситуацию еще больше
Ответ №2:
Вы можете прослушать DOMNodeInserted-событие, однако оно поддерживается не во всех браузерах.
Комментарии:
1. Это событие указывает на изменение, но не говорит вам, откуда оно взялось, а именно этого, я думаю, хочет ОП.
Ответ №3:
Попробуйте использовать firebug с Firefox
Комментарии:
1. я попытался пройти через множество этих сценариев отслеживания в firebug, но поскольку это около 1000 строк кода, я надеялся перейти непосредственно к событиям модификации