Comment puis-je inspecter un élément qui disparaît lorsque ma souris s'éloigne?
Je ne sais pas que c'est une pièce d'identité, une classe ou quoi que ce soit, mais je veux l'inspecter.
Solutions que j'ai essayées:
Exécutez le sélecteur jQuery à l'intérieur de la console $('*:contains("some text")')
mais n'a pas eu de chance principalement parce que l'élément n'est pas caché mais probablement supprimé de l'arborescence DOM.
Inspecter manuellement l'arborescence DOM pour les changements ne me donne rien car il semble être trop rapide pour remarquer ce qui a changé.
SUCCÈS:
J'ai réussi avec les points d'arrêt d'événement. Plus précisément - mousedown dans mon cas. Accédez simplement à Sources-> Event Listener Breakpoints-> Mouse-> mousedown
Chrome. Après cela, j'ai cliqué sur l'élément que je voulais inspecter et à l'intérieur Scope Variables
j'ai vu des directions utiles.
la source
document.body.addEventListener('mouseup',function(){ debugger; })
Cela m'a mis dans une pause et j'ai pu inspecter les éléments créés.Réponses:
(Cette réponse s'applique uniquement aux outils de développement Chrome.Voir la mise à jour ci-dessous.)Recherchez un élément contenant l'élément qui disparaît. Faites un clic droit sur l'élément et appliquez "Pause sur ...> Modifications de sous-arborescence". Cela lancera une pause du débogueur avant la disparition de l'élément, ce qui vous permettra d'interagir avec l'élément dans un état suspendu.
Mise à jour du 22 octobre 2019: avec la sortie de la v.70, il semble que FireFox prend enfin en charge ce type de débogage 2 3 :
la source
<v-container><v-dialog></v-dialog><v-dialog></v-dialog></v-container>
- dans mon cas, la première boîte de dialogue ne s'affiche que jusqu'à ce que les données arrivent de la base de données, environ 1 secondeUne méthode alternative dans Chrome:
la source
setTimeout(()=>{debugger;},5000);
Vous avez maintenant 5 secondes pour faire apparaître votre élément. Une fois qu'il est apparu, attendez que le débogueur frappe. Tant que vous ne reprenez pas, vous pouvez jouer avec votre élément et il ne disparaîtra pas.
Conseil utile pour éviter de répéter les étapes ci-dessus à chaque fois:
ajoutez ceci en tant que bookmarklet:
javascript:(function(){setTimeout(()=>{debugger;},5000);})();
La prochaine fois que vous souhaiterez l'utiliser, cliquez / appuyez simplement sur ce signet.
la source
J'utilise Chrome sur Mac là-bas, j'ai suivi les étapes ci-dessus mais je vais essayer d'expliquer un peu plus:
F8
ouCommand(Window) \
. Cela mettra en pause l'écran dans un état statique et l'élément ne disparaîtra pas en survolant.la source
Ctr + Shift + C
, en déplaçant la souris pour survoler l'élément et en appuyantF8
en l'espace d'une seconde et demie - j'ai finalement obtenu mon élément en mode inspectableDans Firebug, il existe différentes solutions pour cela:
Vous voudrez peut-être aussi suivre numéro 551 , qui demande un moyen de bloquer temporairement des événements spécifiques.
Éditer:
Pour savoir de quel élément il s'agit, vous pouvez également activer les options du panneau HTML Mettre en évidence les modifications , Développer les modifications et faire défiler les modifications dans la vue. pour rendre l'élément visible dans le panneau HTML.
Sébastien
la source
Dans mon cas, j'ai utilisé l' option Développer récursivement sur Google Chrome:
Les étapes sont:
Voici une démo:
la source
Survolez l'élément avec votre souris et appuyez sur F8 (ceci dans Chrome) pour interrompre l'exécution du script. L'état de survol restera visible pour vous.
Cela vous amène à l'onglet sources. Revenez à l'onglet Éléments. Ce code temporel ne disparaîtra pas.
la source
vous pouvez visualiser les éléments apparaissant et disparaissant dans l'inspecteur sous éléments. Si vous accédez à l'élément lorsqu'il est visible, vous devriez pouvoir le voir disparaître ou voir son css changer lorsque son statut change.
Ceci est possible avec Firebug dans Firefox ou l'Inspecteur intégré dans Chrome.
la source
J'ai eu le même problème mais j'utilise Firefox, il disparaît dès que j'ouvre l'élément inspect a trouvé une solution: ouvrez les 4 tirets (paramètres), allez dans développeur Web> Débogueur et appuyez immédiatement sur F8 qui est le raccourci pour la pause qui arrête le script avant qu'il ne démarre et détecte que vous avez ouvert les outils de développement
la source