当前位置: 首页 > wzjs >正文

odoo 网站建设台北网站建设

odoo 网站建设,台北网站建设,机械公司企业简介模板,班级网站源代码下载插件构成 chrome 插件通常由以下几部分组成: manifest.json:相当于插件的 meta 信息,包含插件的名称、版本号、图标、脚本文件名称等,这个文件是每个插件都必须提供的,其他几部分都是可选的。 background script&…

插件构成

chrome 插件通常由以下几部分组成:

  1. manifest.json:相当于插件的 meta 信息,包含插件的名称、版本号、图标、脚本文件名称等,这个文件是每个插件都必须提供的,其他几部分都是可选的。

  2. background script:可以调用全部的 chrome 插件 API,实现跨域请求、网页截屏、弹出 chrome 通知消息等功能。相当于在一个隐藏的浏览器页面内默默运行。

  3. 功能页面:包括点击插件图标弹出的页面(简称 popup)、插件的配置页面(简称 options)。

  4. content script:早期也被称为 injected script,是插件注入到页面的脚本,但是不会体现在页面 DOM 结构里。content script 可以操作 DOM,但是它和页面其他的脚本是隔离的,访问不到其他脚本定义的变量、函数等,相当于运行在单独的沙盒里。content script 可以调用有限的 chrome 插件 API,网络请求收到同源策略限制。

插件的架构可以参考官方文档。

重点说明以下几点:

  1. browser action 和 page action:这俩我们可以理解为插件的按钮。browser action 会固定在 chrome 的工具栏。而 page action 可以设置特定的网页才显示图标,在地址栏的右端,如下图:

1527402e151243a4b8aebe27ed73f3aa

大部分插件点击之后会显示 UI,也就是上文描述的插件功能页面部分,一般称为 popup 页面,如下图:

3d831b9e92d5464290066cabb79c487b

popup 无法通过程序打开,只能由用户点击打开。点击 popup 之外的区域会导致 popup 收起。

page action 和 browser action 分别由 manifest.json 的 page_action 和 browser_action 字段配置。

  1. 由于 content script 受到同源策略的限制,所以一般网络请求都交给 background script 处理。

  2. content script、插件功能页面、background script 之间的通信架构如下图:

aea982dc88de429a8960b347e30d5c0b

  1. chrome 可以打开多个浏览器窗口,而一个窗口会有多个 tab,所以插件的结构大致如下:

050f7069bb824d1eab99ef97ce7e96c1

如上图,功能页面是每个 window 一份,但是每个 tab 都会注入 content script。

处理跨域

实现思路是:content.js 使用chrome.runtime.sendMessage 发送消息,background.js  使用 chrome.runtime.onMessage.addListener 方法进行监听,当监听收到发送的消息时,我们在background.js 上进行请求调用

在mainfest.json permissions 配置

"permissions": ["tabs","activeTab","storage","webRequest","background","notifications"],

content.js

重点是  chrome.runtime.sendMessage 方法

background.js

重点是 chrome.runtime.onMessage.addListener 方法


chrome.runtime.onMessage.addListener(function (e, sender) {const { message, data } = econsole.log('1111',e)const tabId = sender.tab.idswitch (message) {case 'XHR':request_proxy(data, tabId); breakcase 'auto':sendMsg(data.wxid); break}
})







开发者客栈-帮助开发者面试的平台-顽强网络

Chrome浏览器插件开发:进阶 • xu3352's Tech Blog

http://www.dtcms.com/wzjs/576074.html

相关文章:

  • 怎么创建自己公司的网站网站地图怎么使用
  • 江西企业网站定制珠海品牌网站制作服务
  • 记的网站域名百度网站首页网址
  • 建设部人力资源开发中心网站建设网站的群
  • 做门图网站wordpress浮动标签云
  • 搭建网站用什么框架什么是营销型的网站推广
  • 建设工程合同备案是在网站上吗网站建设 软件服务
  • 小程序制作永久免费佛山百度关键词seo外包
  • 南宁本地网站设计微信小程序哪里找
  • 网站开发侵权网站设计方案策划
  • 订单系统单页面网站怎么做黄骅市住房和城乡建设局网站
  • 响应式网站介绍多少钱可以注册一个公司
  • 连锁加盟网站制作wordpress 文章字体插件
  • 重庆市建设厅网站首页前端开发培训找不到工作
  • 漳州网站建设企业手机端尺寸
  • 淘客类网站如何做排名淄博网站建设 招聘
  • 如何建设网站教程视屏长沙谷歌seo收费
  • 网站优化基本技巧自我介绍网站html
  • 网站建设的投资预算怎么写东莞厚街有什么好玩的地方
  • 怎么做虚拟的网站郑州网站建设价位
  • 如何建立学校网站千图网的设计风格
  • 网站精美排版代码wordpress 旅游插件
  • 如何在工商局网站上做网登一人可做的加盟店
  • 国外免费网站域名服务器查询软件网站开发的app
  • 网站的在线支付怎么做官方网站建设建议
  • 网站批量添加内容六年级毕业留言册页面设计模板
  • 网站代运营合同模板设计一站式服务
  • 什么网站做唱歌主播wordpress dooplay
  • 建设公司网站需要多少天大竹县国示建设专题网站
  • 线上网站制作网站开发公司 杭州