Я в настоящее время пытаюсь поместить некоторый код поверх существующей веб-страницы, которую я не могу изменить. Моя цель - «захватить» момент, когда вызывается функция, затем вызвать мой собственный код.Javascript: как зафиксировать момент, когда функция называется
Я вижу два пути, но до сих пор ни одно из моих исследований не нашло ничего.
Способ № 1: поместить какой-либо прослушиватель событий на самой функции, насколько я могу судить, те работают только с объектами DOM, так что это не сработает.
Способ № 2: захватить код функции с помощью функцииName.ToString(), добавить триггер в конец и снова вставить его. Моя проблема в том, что я не могу понять, как переопределить функцию во время работы скрипта.
Это код, который я пытаюсь понять, когда он называется. Он находится в глобальном объекте Tie, который содержит функцию.
Tie.writeChat = function() {
this.ctiming = baseChatUpdate;
clearTimeout(this.chatSlow);
this.chatSlow = setTimeout(function() {
Tie.ctiming = 60 * 1 * 1000;
console.log("Slow chat");
}, 60 * 15 * 1000);
var msg = Tie.enc(Tie.id("chatmsg").value);
var c = Tie.id("change").innerHTML;
if (msg != "") {
Tie.request("write.php", "msg: " + msg + ", c: " + c);
Tie.id("chatmsg").value = "";
}
}
У кого-нибудь есть идеи?
Спасибо.
Любые намеки на объем функция определяется и называется сегодня? Является ли он глобальным (например, 'window.myFun'), частным для модуля и т. Д. –
Обновлено с этим, это то, что вы хотели? – Munsta0
Это помогает, но он не совсем отвечает запрошенным разъяснениям. Является ли 'Tie' глобальным/доступным как' window.Tie'? Где находится ссылка «Tie.writeChat»? – icktoofay