【Chrome拡張】の開発についての記事です。
タブが作成された時に、読み込み完了をさせてから処理を書きたい時の方法を書きます。
結論のコードから先にのせておきます。
chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab){ console.log("created tabs and update"); if (changeInfo.status === 'complete') { console.log("status is complete"); // 処理 } }
どうも、chrome.tabs
には、読み込み時の loading
というステータスと、complete
というスタータスが存在するようです。
なので、タブが作られたときには処理が2回走ります。
で、onUpdated
の時の、changeInfo.status
の中身をみてやればよいみたいです。
上記のコードでは console.log
で確かめられるようにしてます。
実際にタブを開いてみたら、わかると思います。
consoleの吐き出しの見方はこの記事をみてください。
https://sakurawi.hateblo.jp/entry/check-background
参考
https://groups.google.com/forum/#!topic/chrome-api-developers-jp/LxMOHwhIl98
http://kenzauros.com/blog/event-listener-templates-of-tabs-in-chrome-extension-api/