首页 新闻 会员 周边

chrome.tabs.onUpdate监听函数,刷新一次标签页,执行两次?

1
悬赏园豆:10 [已解决问题] 解决于 2014-03-09 00:17

想试着写一个统计浏览过的网站次数的小插件,(还不会写,菜鸟正在入门)

模仿前人的代码,

chrome.tabs.onUpdated.addListener(
function(tabId,changeInfo,tab){
  console.log(tab.url);

  add_cnt(tab.url);

});

本来想读取当前页面url,然后计数,发现监听函数每次刷新都被执行了两次,计数也加了两次!

在 generated background page.html中总是看到成对的,比如:

 
求解!
leenham的主页 leenham | 初学一级 | 园豆:197
提问于:2014-03-08 12:20
< >
分享
最佳答案
0

虽然不知道是什么原理,不过我想我大概知道原因了。

刷新一次标签页,onUpdated会被触发两次,第一次changeInfo.status是loading,第二次是changeInfo.status是complete,描述的就是标签页的打开状态。对于访问计数的话,只需要在函数入口加一个判断status,就可以避免连续两次计数了!

leenham | 初学一级 |园豆:197 | 2014-03-09 00:16
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册