Retrouver / altérer le callback d'un setTimeout
Bonjour,
J'ai un script sur lequel je n'ai pas la main, qui fait un setTimeout dans le onload de la page :
Code:
1 2
|
setTimeout(function(){ alert("Hello"); }, 3000); |
Ce comportement me dérange, et je souhaite le neutraliser.
J'ai donc créé un autre script, que je déclenche dans la foulée, qui fait :
Code:
1 2 3 4
|
window.setTimeout = function (func, interval) {
// Do nothing
}; |
Ainsi, le timeout en question ne se déclenche plus.
Seulement, cela provoque d'autres effets de bord : notamment, plus aucun window.setTimeout ne fonctionne !
La méthode clearTimeout(myVar) attend en paramètre un handle retourné par setTimeout. Je n'ai pas ce handle sous la main, donc impossible d'utiliser cette méthode.
Question : comment retrouver la liste des handles actifs ? Éventuellement le prototype des fonctions callback associées, afin que je puisse annuler uniquement le traitement qui m'intéresse ?