Google Chrome apertura extensión de múltiples pestañas de clic
-
26-09-2019 - |
Pregunta
mi primera pregunta, es de esperar que estoy pidiendo lo justo. He buscado por todas partes y no puedo encontrar nada en él.
Básicamente, tengo el siguiente código, lo que hace es cuando en una página youtube.com/watch que muestra un icono en la barra de direcciones, si hace clic en ese icono, se puso el pulgar es de alta calidad se reconstruyó en localStorage y luego abre thumb.html que acaba agarra ese valor localStorage y muestra la imagen en la página. Noté si golpeo entrar en la barra de direcciones para cargar la página y haga clic en el icono, que funciona bien, pero si puedo navegar a otro vídeo a través de la página y haga clic en él, se abre 2 páginas, si voy a una tercera página , se abre 3 páginas, etcétera, etcétera. Sólo que no sé lo que está pasando.
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'});
}
});
}
}
});
Solución
encontrado el problema. Que necesitaba para mover la parte exterior de la chrome.pageAction.onClicked.addListener
chrome.tabs.onUpdated.addListener
.