Maison > interface Web > js tutoriel > le corps du texte

Comment corriger les erreurs « runtime.lastError » causées par des scripts de contenu orphelins dans les extensions Chrome ?

Patricia Arquette
Libérer: 2024-10-31 15:49:02
original
955 Les gens l'ont consulté

How to Fix

Résolution des scripts orphelins après la mise à jour de l'extension Chrome

Problème :

Après le rechargement accidentel d'une extension Chrome, un "runtime. L'erreur lastError" se produit en raison d'un script de contenu "orphelin", entraînant un échec de communication entre la popup et les pages de contenu.

Solution :

Pour résoudre ce problème, vous peut utiliser des messages de fenêtre pour diffuser un signal de votre script de contenu réinjecté vers le script orphelin. Le script orphelin désenregistrera ensuite ses auditeurs, le rendant disponible pour le garbage collection.

Mise en œuvre :

background.js

Implémenter la réinjection du script de contenu sur rechargement/installation de l'extension.

content.js

  • Générez un ID de message orphelin unique à l'aide de chrome.runtime.id.
  • Diffusez l'événement ID de message orphelin et ajoutez un écouteur d'événement pour le gérer.
  • Enregistrez tous les écouteurs avec des fonctions nommées pour préserver les références d'objet.
  • Utilisez running = true pour indiquer un script de contenu actif.

unregisterOrphan Function

  • Vérifiez si l'extension est active.
  • Supprimez l'écouteur de message orphelin et tous les autres écouteurs d'événement.

onMessage Function

  • Gérer les messages entrants.

Fonction onMouseMove

  • Exécuter la gestion des événements DOM, en vérifiant le statut orphelin avant le traitement.

popup.js

  • Assurez-vous qu'un script de contenu est injecté avant d'envoyer des messages.
  • Implémentez des fonctions pour vérifier les scripts de contenu actifs et en injecter un si nécessaire.

En suivant ces étapes, vous pouvez supprimer les scripts de contenu orphelins et restaurer la communication entre les composants de votre extension.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!