资讯专栏INFORMATION COLUMN

chrome扩展开发之旅 第四篇

jackwang / 4331人阅读

摘要:目录结构书签历史管理扩展与应用标签书签第一步,在中声明书签的个属性,并不是每个书签都有这个对象,如书签文件夹就不具有属性。调整书签位置更新书签删除书签和空的书签分组删除包含书签的书签分组获取完整的书签内容书签的事件第一步,先行在中声明。

目录结构

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",
  ""       //管理所有的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列出来了,希望大家能够找到自己需要用的,再去细查相应的介绍。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/78522.html

相关文章

  • 一起来学SpringBoot | 四篇:整合Thymeleaf模板

    摘要:在使用上述模板,默认从下加载。介绍是现代化服务器端的模板引擎,不同与其它几种模板的是的语法更加接近,并且具有很高的扩展性。特点支持无网络环境下运行,由于它支持原型,然后在标签里增加额外的属性来达到模板数据的展示方式。 SpringBoot 是为了简化 Spring 应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,...

    TZLLOG 评论0 收藏0
  • 用十种编程语言开发计算器应用-四篇-Kotlin

    用十种编程语言开发计算器应用 C语言C#(windows桌面软件)Swift (ios应用)pythonDart(Flutter应用,跨平台,适用安卓、ios、mac、windows、web)Java(安卓App)Kotlin (安卓App)Js+Html+Vue(H5应用)微信小程序抖音小程序 安卓Kotlin语言版 开发工具 Android Studio 如何下载 工程截图 关键代码文...

    gclove 评论0 收藏0
  • chrome扩展开发之旅 第一篇

    摘要:扩展及应用介绍与区别介绍支持开发者为其编写各种各样的扩展与应用来扩充其功能。用处安装扩展之后,就会读取扩展中的文件。结语以上就是第一章的总结,接下来的笔记,敬请期待原书项目代码下载扩展及其应用开发 读书笔记介绍 寒假想自己做一个chrome扩展,便从图书馆借了这本书。同时,为了培养自己的好习惯,做沉淀,便读一章写一篇总结,全书总共10章,将会分为10篇博文。欢迎大家多多指正,也希望大家...

    lei___ 评论0 收藏0
  • chrome扩展开发之旅 第二篇

    摘要:跨域请求跨域问题,是开发中一直以来需要注意的问题。则发送通道的发送给监听此消息的外部扩展。完整方法此处,为必选参数,为回调函数。回调函数接收到的参数有三个,分别是和,即消息内容,消息发送者相关信息和相应函数。是发起消息的标签。 第二章简介 第二章较第一章复杂许多。书中虽寥寥21页,内容却也不少。涵盖了8个小节。 2.1 操作用户正在浏览的页面 2.2 跨域请求 2.3 常驻后台 2....

    shadajin 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<