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

Comment puis-je déterminer si une extension Chrome est installée à l'aide de JavaScript ?

Patricia Arquette
Libérer: 2024-11-17 04:11:03
original
352 Les gens l'ont consulté

How Can I Determine if a Chrome Extension is Installed Using JavaScript?

JavaScript peut-il vérifier l'installation de l'extension Chrome ?

Dans le développement Web actuel, il peut être nécessaire de déterminer si une extension Chrome spécifique est installée sur le navigateur d'un utilisateur. Cette fonctionnalité permet aux applications Web d'interagir de manière transparente avec les extensions de navigateur installées.

Script d'arrière-plan de l'extension :

Pour activer la communication du site Web vers l'extension, mettez à jour le script d'arrière-plan ( background.js) de l'extension comme suit :

chrome.runtime.onMessageExternal.addListener(
    function(request, sender, sendResponse) {
        if (request) {
            if (request.message) {
                if (request.message == "version") {
                    sendResponse({version: 1.0});
                }
            }
        }
        return true;
    });
Copier après la connexion

Site Web Script :

Depuis le site Web, le script suivant peut être utilisé pour vérifier l'extension :

var hasExtension = false;

chrome.runtime.sendMessage(extensionId, { message: "version" },
    function (reply) {
        if (reply) {
            if (reply.version) {
                if (reply.version >= requiredVersion) {
                    hasExtension = true;
                }
            }
        }
        else {
          hasExtension = false;
        }
    });
Copier après la connexion

La variable hasExtension peut ensuite être vérifiée pour déterminer la présence de l'extension .

Mise à jour du manifeste :

Pour autoriser la messagerie du site Web vers l'extension, assurez-vous que le Le fichier manifest.json de l'extension comprend les éléments suivants :

"externally_connectable": {
    "matches": ["*://localhost/*", "*://your.domain.com/*"]
},
Copier après la connexion

Mise à jour 2021 :

Notez que depuis 2021, chrome.runtime.sendMessage lève une exception si l'extension est non installé ou désactivé. Pour résoudre ce problème, validez la propriété chrome.runtime.lastError dans le rappel :

if (chrome.runtime.lastError) {
    // handle error 
}
Copier après la connexion

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