ouverture de l'extension Google Chrome sur plusieurs onglets, cliquez
-
26-09-2019 - |
Question
ma première question, je l'espère je demande juste. Je cherchai partout et ne trouve rien là-dessus.
En fait, je le code suivant, ce qu'il fait est quand sur une page youtube.com/watch il affiche une icône dans la barre d'adresse, si vous cliquez sur cette icône, il a mis est le pouce de haute qualité, il reconstruit dans localStorage et ouvre alors thumb.html qui prend juste cette valeur localStorage et affiche l'image sur la page. J'ai remarqué si je frappe entrer dans la barre d'adresse pour charger la page et cliquez sur l'icône, il fonctionne très bien, mais si je navigue à une autre vidéo sur la page et cliquez dessus, il ouvre 2 pages, si je vais à une 3ème page , il ouvre 3 pages, ainsi de suite, et ainsi de suite. Je ne sais pas ce qui se passe.
chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab)
{
updatedTab = tab;
updatedTabId = tabId;
if(changeInfo.status == 'complete')
{
if(updatedTab.url.indexOf('youtube.com/watch') != -1)
{
chrome.pageAction.show(tabId);
chrome.pageAction.onClicked.addListener(function(tab)
{
if(window === top)
{
var yt = tab.url.split('v=');
var yt = yt[1].split('&');
var yURL = 'http://www.youtube.com/watch?v='+yt[0];
var yThumb = 'http://i2.ytimg.com/vi/'+yt[0]+'/hqdefault.jpg';
localStorage.setItem('ytHQthumb', yThumb);
chrome.tabs.create({'url': 'thumb.html'});
}
});
}
}
});
La solution
trouvé le problème. Je avais besoin de déplacer le chrome.pageAction.onClicked.addListener
extérieur du chrome.tabs.onUpdated.addListener
.