Comment faire pour obtenir l'id d'un onglet google Chrome?
chrome.tabs.get
apparemment ne fonctionne pas dans le contenu du script, et d'autres que de l'envoyer par le biais de chrome.extension.sendRequest
je n'ai aucune idée de comment faire de l'arrière-plan de répondre à l'onglet approprié.
Comment puis-je rendre le contenu de script envoyer des informations à la page d'arrière-plan, puis l'arrière-plan de la page de retour de l'information de retour à l'onglet d'où ça vient?
OriginalL'auteur Anonymous | 2011-03-27
Vous devez vous connecter pour publier un commentaire.
Eh bien, laissez-moi vous expliquer mec 😉
Tout d'abord envoyer un message à partir de votre contenu-script comme ceci :
Contenu du Script - Envoyer le message
Page d'arrière-plan - de Recevoir le message et la réponse
ContentScript - Ajouter un écouteur
le chrome.onglets.getSelected est également déprécié depuis Chrome 33. Veuillez utiliser les onglets.query {actif: true}. developer.chrome.com/extensions/tabs#method-query
OriginalL'auteur Sindar
onMessage
fournit unsendResponse
fonction qui peut être utilisée pour envoyer une réponse directement à l'expéditeur.background.js
extrait:content_scripts.js
extrait:OriginalL'auteur Nate
Gracieusement à la disposition de n'importe qui qui regarde cette question post-2011, j'ai fourni une réponse qui utilise la plus récente des conventions et des Api. C'est assez souvent question populaire et accepté la réponse est un peu daté à ce point (mais encore une réponse précise, par ailleurs), donc pour tout les nouveaux arrivants ce qui devrait, espérons-claire et la plus applicable réponse à la question.
Pour commencer, vous pouvez envoyer un message à partir du contenu du script à l'aide de le chrome.moment de l'exécution.sendMessage. Ce sera sans discernement envoyer le message lors de l'exécution de l'événement se produit (c'est à dire le navigateur d'action est cliqué). Il ressemblera à quelque chose comme ceci:
content.js
Car vous avez besoin pour communiquer avec la page d'un événement (en conformité avec les nouvelles conventions, la page de l'événement est le choix préféré sur la persistance de la page d'arrière-plan) pour obtenir des informations sur l'onglet actif (en supposant que vous voulez sur l'onglet id), vous pouvez saisir ces informations par l'ajout d'un moteur d'exécution de l'écouteur d'événement et de vérification de la
sender
paramètre. Il ressemblera à quelque chose comme ceci:event.js
Cependant, puisque nous avons besoin de fournir que les informations de retour pour le contenu du script, nous allons avoir besoin de revenir en arrière et ajouter un gestionnaire de rappel à le chrome.moment de l'exécution.sendMessage. Il va maintenant ressembler à ceci:
content.js
Ce programme d'installation va maintenant vous permettre de passer simple, une fois que les messages de
content.js
àevent.js
, oùevent.js
fournit de l'information aucontent.js
.Encore une fois, c'est juste une version mise à jour de la accepté de réponse pour ceux qui voudrais un exemple de comment la nouvelle approche des œuvres.
OriginalL'auteur nburr
≪Obtenir onglet id≫ exemple complet ▼
(Vérité: la plus claire les définitions complètes: des exemples.)
≪manifeste
.json
≫:≪bg
.js
≫:≪contenu
.js
≫:Recharger extension, aller d'un onglet, d'actualiser la page, attendre, vérifiez ≪contenu
.js
≫ de l'oxus, attendre, vérifiez cb de l'oxus, attendre, vérifiez ≪console.journal≫ de l'oxus, par exemple:Vérifier ▼
Complet patch–:
≪bg
.js
≫:≪contenu
.js
≫:OriginalL'auteur Pacerier