我的第一个问题,希望我说得对。我遍地搜索,找不到任何东西。
基本上,我有以下代码,它的作用是在youtube.com/watch页面上它在地址栏中显示一个图标,如果你点击该图标,它会将重建的高质量拇指放入localstorage和然后打开thumb.html,它只抓取localstorage值并在页面上显示图像。我注意到如果我在地址栏中输入Enter来加载页面,然后单击图标,它工作正常,但如果我通过页面导航到另一个视频并单击它,它会打开2页,如果我转到第3页,它打开3页,依此类推。我只是不知道发生了什么。
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'});
}
});
}
}
});
答案 0 :(得分:2)