目录结构

  • 4.1 书签

  • 4.2 Cookies

  • 4.3 历史

  • 4.4 管理扩展与应用

  • 4.5 标签

  • 4.6 overridePages

4.1 书签

第一步,在manifest中声明

  "permissions": [
    "bookmarks"
  ]

书签的8个属性,

  • id

  • parentId

  • index

  • url

  • title

  • dateAdded

  • dateGroupModified

  • children
    并不是每个书签都有这8个对象,如书签文件夹就不具有url属性。只有id和title是必有的属性,其他属性都

是可选的。id不需要认为干预,他是由chrome来管理分配的。根的id为0。

书签的方法

  • chrome.bookmarks.create({},function(bookmark){}) //如果创建的书签不包含 url属性,则chrome自动将其视为书签分类。

  • chrome.bookmarks.move('16',{},function(bookmark){}) //调整书签位置

  • chrome.bookmarks.update('16',{},function(bookmark){}) //更新书签

  • chrome.bookmarks.remove('16',function(bookmark){}) //删除书签和空的书签分组

  • chrome.bookmarks.removeTree('16',function(bookmark){}) //删除包含书签的书签分组

  • chrome.bookmarks.getTree(function(bookmarkArray){}) //获取完整的书签内容

书签的事件

  • chrome.bookmarks.onCreated.addListener(function(bookmark){})

  • chrome.bookmarks.onRemoved.addListener(function(id,removeInfo){})

  • chrome.bookmarks.onChanged.addListener(function(id,changeInfo){})

  • chrome.bookmarks.onMoved.addListener(function(id,moveInfo){})

  • chrome.bookmarks.onChildrenReordered.addListener(function(id,reorderInfo){})

  • chrome.bookmarks.onChanged.addListener(function(id,changeInfo){})

Cookies

第一步,先行在manifest中声明。

"permissions": [
  "cookies",
  "*://*google.com"  //声明可以对符合规则的域名的cookies进行管理
]
"permissions": [
  "cookies",
  "<all_urls>"       //管理所有的Cookie
]

Cookie的方法

  • chrome.Cookies.get({},function(cookie){})

  • chrome.Cookies.getAll({},function(cookies){})

  • chrome.Cookies.set({},function(cookie){})

  • chrome.Cookies.remove({},function(result){})

监控操作cookie的行为

chrome.cookies.onChanged.addListener(function(changeInfo){})

4.3历史

声明

  "permissions": [
    "history"
  ]

方法

  • chrome.history.search()

  • chrome.history.getVisits()

  • chrome.history.addUrl()

  • chrome.history.deleteUrl()

  • chrome.history.deleteRange()

  • chrome.history.deleteAll()

监听操作

  • chrome.history.onVisited.addListener()

  • chrome.history.onVisitedRemoved.addListener()

4.4管理扩展与应用

声明

  "permissions": [
    "management"
  ]

方法

  • chrome.management.getAll(function(exInfoArray){})

  • chrome.management.get(exId,function(exInfo){})

  • chrome.management.setEnabled(exId,enabled,function(){}) //设置启用或者禁用,enabled是布尔值

  • chrome.management.launchApp(exId,function(){})

监听

  • chrome.management.onInstalled.addListener()

  • chrome.management.onUninstalled.addListener()

  • chrome.management.onEnabled.addListener()

  • chrome.management.onDisabled.addListener()

4.5 标签

声明

  "permissions": [
    "tabs"
  ]

方法

  • chrome.tabs.get(tabId,function(tab){})

  • chrome.tabs.getCurrent(tabId,function(tab){})

  • chrome.tabs.query(tabId,function(tab){})

  • chrome.tabs.create({},function(tab){})

  • chrome.tabs.duplicate(tabId,function(tab){})

  • chrome.tabs.update(tabId,{},function(tab){})

  • chrome.tabs.move(tabId,{},function(tabs){})

  • chrome.tabs.reload(tabId,{},function(){})

  • chrome.tabs.remove(tabId,function(){})

  • chrome.tabs.executeScript(tabId,{},function(tab){resultArray})

  • chrome.tabs.insertCSS(tabId,{},function(){})

  • chrome.tabs.sendMessage(tabId,message,function(response){})

监听

  • chrome.tabs.onCreated.addListener(function(tab){})

  • chrome.tabs.onUpdated.addListener(function(tab){})

  • chrome.tabs.onMoved.addListener(function(tab){})

  • chrome.tabs.onActivated.addListener(function(tab){})

  • chrome.tabs.onHighlighted.addListener(function(tab){})

  • chrome.tabs.onDetached.addListener(function(tab){})

  • chrome.tabs.onAttached.addListener(function(tab){})

  • chrome.tabs.onRemoved.addListener(function(tab){})

  • chrome.tabs.onReplaced.addListener(function(tab){})

4.6 Override Pages

自定义页面替换相应的chrome默认页面,这就是override pages。
只需要在manifes中声明即可

"chrome_url_overrides": {
"bookmarks": "bookmarks.html"
}

结语

本章,全是对api的介绍,总结起来,也只能这样把所有API列出来了,希望大家能够找到自己需要用的,再去细查相应的介绍。


WilsonLiu95
860 声望59 粉丝

致力于做一个有故事的人。小时候听爸爸说他的故事,长大了去创造自己的故事;当父亲后有故事可讲;老了以后有故事可以回味。