apertura estensione di Google Chrome più schede su click
-
26-09-2019 - |
Domanda
la mia prima domanda, si spera sto chiedendo a destra. Ho cercato dappertutto e non riesco a trovare nulla su di esso.
In sostanza, ho il seguente codice, ciò che fa è quando in una pagina youtube.com/watch mostra un'icona nella barra degli indirizzi, se si fa clic su questa icona, ha messo il pollice di alta qualità è ricostruita in localStorage e poi apre thumb.html che ha appena afferra quel valore localStorage e visualizza l'immagine sulla pagina. Ho notato che se mi ha colpito entrare nella barra degli indirizzi per caricare la pagina, e fare clic sull'icona, funziona benissimo, ma se ci si dirige verso un altro video tramite la pagina e fare clic su di esso, si apre 2 pagine, se vado a un 3 ° pagina , si apre 3 pagine, così via, e così via. Io proprio non so cosa sta succedendo.
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'});
}
});
}
}
});
Soluzione
Trovato il problema. Avevo bisogno di spostare l'esterno chrome.pageAction.onClicked.addListener
del chrome.tabs.onUpdated.addListener
.