首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Chrome Extension

CSS、JS、图片等资源组成的一个.crx后缀的压缩包 扩展程序由一些文件(包括 HTML、CSS、JavaScript、图片以及其他任何您需要的文件)经过 zip 打包得到,为 Google Chrome...manifest.json 每一个扩展程序、可安装的网络应用以及主题背景都有一个 JSON 格式的清单文件,名为 manifest.json,提供重要信息, 包含一些属性,如您的扩展程序的名称与描述、它的版本号等等...然后找到extension目录 打包 当您为扩展程序打包时,扩展程序将获得唯一的密钥扩展程序的标识符基于公钥的散列,私有密钥用来为每一个版本的扩展程序签名,必须严格保护,不能由公众访问。...popup 的页面, 则用户点击图标就会渲染此 HTML 页面 "default_popup": "popup.html" // optional }, //如果并不是每个网站页面都需要使用插件..., 可以使用 page_action 不是 browser_action //browser_action 应用更加广泛 //如果 page_action 并不应用在当前页面, 会显示灰色 "page_action

2.7K30

【干货】Chrome插件(扩展)开发全攻略

插件不是Firefox插件 Chrome占有率更高,更多人用; 开发更简单; 应用场景更广泛,Firefox插件只能运行在Firefox上,Chrome除了Chrome浏览器之外,还可以运行在所有webkit...; }); 双方通信直接发送的都是JSON对象,不是JSON字符串,所以无需解析,方便(当然也可以直接发送字符串)。...tabs[0].id: null); }); }); } 本地存储 本地存储建议用chrome.storage不是普通的localStorage,区别有好几点,个人认为最重要的2点区别是: chrome.storage...,方便,如果没有登录或者未联网则先保存到本地,等登录了再同步至网络; 需要声明storage权限,有chrome.storage.sync和chrome.storage.local2种方式可供选择,使用示例如下...文档 模糊匹配规则语法详解 第三方资料 部分中文资料,不是特别推荐: 360安全浏览器开发文档 360极速浏览器Chrome扩展开发文档 Chrome扩展开发极客系列博客

11.4K40
您找到你想要的搜索结果了吗?
是的
没有找到

产品解析:Github Atom

atom提供了随处可查的帮助方便程序员扩展,比如说,要写theme,你可以先看看atom的style guide: ?...看看这个界面,是不是很有chrome的赶脚?? ? 这就是Atom最大的亮点!web native。...看上去atom的源代码来自chrome —— 我觉得atom很可能是一款以某种方式运行本地web app的浏览器。...很可能chrome上面的沙箱环境(不允许web app访问本地资源,如文件系统)被移除,然后nodejs以某种方式被集成进来(这样javascript可以访问文件系统等本地资源)。...在mobile上,使用浏览器的代码做基石,不是web view的代价可能比较大,比如说文件大小,成熟度等。但在desktop上,这个可行性大了不少,因为开源的chrome的生态圈成熟。

1.5K80

如何实现一个谷歌浏览器插件

如何实现一个谷歌浏览器插件 一、什么是Chrome插件? ★Chrome插件就是我们运行在Chrome浏览器 上的扩展程序,比如说vue-devtool。...准确的说,其实更应该叫做Chrome扩展,因为插件是更偏向于底层的技术。Chrome插件本质上来说,就是利用WEB开发技术,包括HTML、CSS和JS等开发出来的web页面,用来增强浏览器的功能。...” 二、基本组成 manifest.json: 插件的配置文件 这是插件最重要也是最不可或缺的文件,它包含了插件的所有配置信息。..."48": "img/icon.png", // 显示在扩展程序管理页面上 "128": "img/icon.png" // 在安装和Chrome Webstore...文件,但是在注入CSS文件时,要小心,否则会覆盖网页原本的样式。

1.4K31

前端开发介绍(包含调试什么的)

入门需要配置,中文用户来说,英文的不熟悉造成了配置的障碍。其实也不是复杂的过程,基础的配置看看入门教程,基本都能搞得定。 3)....提高切图效率思路之扩展: 从客观上来讲,提高效率的基础在于丰富的实战经验或长年的填坑经历,本质上软件的操作差别不是特别大。一个五年经验或一年经验的开发人员,使用同样的工具,主要差别还是一个熟练度。...三.Html、CSS结构 以下当中,Emmet成本最轻,实现最简单,是目前比较常用的一种扩展方式。其它的几种都需要依赖一种环境,另外还需要一定的入门成本,团队或项目的维护是一个不小的考验。...扩展阅读 web前端开发分享-css,js工具篇 3. IE IE11的debuger个人感觉还是有进步的,是想从细节处来吸引用户。...细节处理  有些页面设计师为了强调内容的不一致,可能做了差异化设计,这时需要用不同的CSS覆盖差异化页面设计。

1.4K30

Chrome扩展开发入门

本篇文章主要是从开发者角度来其进行介绍,帮助开发者 Chrome 扩展的结构和开发方式有个大致了解,快速入门。...一、Chrome 扩展应用程序构成(manifest v3版本) Chrome 扩展开发所用到的技术栈就是html/js/css。可以说就是纯“前端开发”,其界面是用 html+css 画的。...所以说,Chrome 扩展开发并不是什么新鲜玩意儿,只是一个挂载到 Chrome 浏览器上的一个“扩展”模块,比起微信小程序开发还简单。 这不就是网页应用吗?...2.相比也网页有更多的功能特性,支持调用 Chrome 浏览器原生API,可跨浏览器 Tab 运行,生命周期不会不随着页面关闭结束。...各个模块互通信、协作、配合,就构成了一个完整的 Chrome 扩展。 当然,除了上面的六大模块,还有一个非常非常重要的组成部分,那就是 manifest.json。

3.9K30

Chrome扩展开发

扩展demo", // 图标,一般偷懒全部用一个尺寸的也没问题 "icons": { "16": "img/icon.png", "48": "img/icon.png", "128"...的注意就要千万小心了,因为一不小心就可能影响全局样式 "css": ["css/custom.css"], // 代码注入的时间,可选值: "document_start", "document_end...], // 普通页面能够直接访问的插件资源列表,如果不设置是无法直接访问的 "web_accessible_resources": ["js/inject.js"], // 插件主页,这个很重要...,不要浪费了这个免费广告位 "homepage_url": "https://www.baidu.com", // 覆盖浏览器默认页面 "chrome_url_overrides": { /.../ 覆盖浏览器默认的新标签页 "newtab": "newtab.html" }, // Chrome40以前的插件配置页写法 "options_page": "options.html",

82420

CSS中字体相关的小技巧

让我们仔细看看规范: 开发者使用的字体名如果与用户使用环境中已有的某个字体名字相同,在使用样式表的文档中会有效覆盖底层字体。...这使得网页开发者可以自由的选择字体名称,毋庸担心与给定用户环境中存在的字体名产生冲突。 规范中如此定义是因为选择出与每个用户环境不产生冲突的名字这件事想想就十分可怕!...对于OpenType类型和TrueType类型的字体,这个字符串分别是用于匹配本地可用字体名称表中的Postscript名称或是完整字体名称。...我偶然发现Facebook正在使用这个聪明的技巧。...同样也不再需要在你的CSS中为 font-family属性赋其他杂乱的值了。简单而有效!

1.3K40

浏览器架构的温故知新

GPU 进程最初是为了3D CSS 效果,后来扩展到绘制网页和 Chrome UI 界面。在 Chrome 的多进程架构中引入,以满足常见的浏览器需求。...同时,存储进程为插件提供了本地存储功能,使用chrome.storage.local在chrome扩展本地存储和检索数据。...网络请求修改使用了新的声明文件请求 API,不是已经废弃的 webRequest API。 不允许远程代码执行; 只有扩展包中的 JS 可以运行。...ServiceWorker 功能允许扩展操作,而无需一直驻留在后台。这样可以回收扩展资源,有效地减少总体浏览器开销。规则计算的限制作为一种控制机制,确保单个扩展不会过度消耗资源。...4.3.3 后台脚本 Chrome 扩展中的后台脚本具有最长的生命周期,并且在浏览器打开时连续运行。它拥有广泛的权限,允许访问大多数 Chrome 扩展 API 和跨源请求,不受 CORS 限制。

9310

聊一聊如何基于Chrome Devtools 进行远程调试

devtools 本身是开源的前端项目,容易构建并集成,并与 Chrome DevTools Protocol (简称 CDP) 协议进行对接。...大概的示意图如下 为什么需要远程调试 外网用户反馈一些页面异常,比如某些操作没响应(大概率 JS 报错), 上报日志不一定能排除问题 本地开发时没有问题,但在某些真机上表现不对 测试同学反馈 web...目前,已实现的功能如下,基本上能够覆盖常用的调试能力,同时也扩展了调试协议,实现了页面实时预览能力。...源文件代码 源代码格式化预览 5、Network 异步请求抓包(Fetch、XHR) HTML、JS、CSS 静态资源请求抓包 6、Application Local Storage Session...Storage Cookies 7、Screenshot(扩展协议) 页面实时预览 引用 Chrome DevTools Protocol:https://chromedevtools.github.io

98430

基于 Chrome Devtools 的远程调试实现

devtools 本身是开源的前端项目,容易构建并集成,并与 Chrome DevTools Protocol (简称 CDP) 协议进行对接。...大概的示意图如下 为什么需要远程调试 外网用户反馈一些页面异常,比如某些操作没响应(大概率 JS 报错), 上报日志不一定能排除问题 本地开发时没有问题,但在某些真机上表现不对 测试同学反馈 web...目前,已实现的功能如下,基本上能够覆盖常用的调试能力,同时也扩展了调试协议,实现了页面实时预览能力。...源文件代码 源代码格式化预览 5、Network 异步请求抓包(Fetch、XHR) HTML、JS、CSS 静态资源请求抓包 6、Application Local Storage Session...Storage Cookies 7、Screenshot(扩展协议) 页面实时预览 引用 Chrome DevTools Protocol:https://chromedevtools.github.io

60330

Mozilla Firefox Extension扩展 内幕 教程 源代码分析 安装过程分析(XPInstall,xpcom,rdf,xpi,chrome,manifest)

locale 目录存放的是本地化相关的文件。如果需要支持英文和中文,就可以在 locale 目录下面新建 en-US 和 zh-CN 目录来存放相应的本地化字符串。...skin 目录存放的是一些 CSS 文件,用来定义扩展的外观。chrome.manifest 是 Chrome 注册的清单文件(参见 2.2节)。install.rdf 分别包含了扩展安装的信息。...XUL文件将会指定扩展在Firefox中运行时表现的界面和功能。XUL文件是一种Javascript文件,设计的目的是为了描述窗口和对话框的内容。 l  区域(Locale) :存放本地化信息。...l  皮肤(Skin):描述 chrome 的外观。通常包含 CSS 和图像文件。...IDL和Javascript就更加难以阅读了。在研究过程中,不得不使用ctrl+f来不断查找了。 组内大部分同学来说,都是第一次正式的去研究一个软件某一部分的代码。

1.3K50

手把手教你打造全宇宙最强 Firefox 浏览器

Chrome 的 Blink 引擎是用 C++ 写的。C++ 语言如同 C 语言,容易因为内存使用方面的问题导致安全漏洞(比如:缓冲区溢出、野指针 ...)。这个缺点是编程语言本身导致的。...另外,我觉得 Firefox 最大的一个〖杀手锏〗就是高度可定制化,你可以凭借自己的想象力把 Firefox 浏览器改造成自己想要的任意形态, Chrome 却只能限定在一个可控范围内进行扩展和定制,...CSS网页样式进行自定义。...重启 Firefox 浏览器就可以看到浏览器的工具栏中多了一个扩展的图标,实际上这不是一个浏览器扩展,而是通过 JavaScript 实现的。...最后再介绍两个浏览器进行个性化的方法,不过不是 Firefox 专属的功能,Chrome 浏览器也是通用的。 油猴脚本 油猴脚本,正式的叫法是用户脚本(user script)。

1.9K30

数栈技术干货:从0到1实现谷歌插件开发探索及应用

首先需要打开管理扩展程序,打开开发者模式。 点击加载已解压的程序按钮即可加载本地谷歌插件,开发的时候代码如果有更新的话,需要刷新已加载插件,点击关闭后再开启,不必刷新开发页面。 ?...(四)右键直达翻译页面 当关闭划词翻译的时候,直接无法翻译选中内容也不是友好,这个时候可以设置为点击右键的时候出现翻译菜单项。因为这部分内容需要一直存在就加在 background 中。...// backgrond.js // 当扩展程序第一次安装、更新至新版本或 Chrome 浏览器更新至新版本时产生 chrome.runtime.onInstalled.addListener(() =...主要因为 background 的权限非常高,几乎可以调用所有的 Chrome 扩展 Api,而且它可以无限制跨域,也就是可以跨域访问任何网站而无需要求对方设置 CORS。...多添加一步感觉交互更友好,不用去进行开关的操作。 代码结构 ?

1.1K20

自己实现 Chrome DevTools 的 Coverage 功能

Chrome DevTools 有一个覆盖率检测的功能,可以检测 JS、CSS 代码里有哪些执行了,哪些没执行。并且还会在 sources 里标记出来。...更重要的是,通过 api 的方式,你是能拿到运行时的数据的,可以自己做一些计算和处理,然后把数据存下来之类的。...总结 Chrome DevTools 有 Coverage 面板,可以分析 JS 和 CSS 代码执行的覆盖率,分析出哪些代码没执行,然后做后续优化。...这是 Chrome 通过 CDP 暴露给 Chrome DevTools 的, CDP 的数据我们也能自己实现 ws 客户端来拿到,那自然也可以自己实现覆盖率的计算。...我们通过 chrome-remote-interface 的不同域的 api 来进行了 CSS 和 JS 的代码的收集,代码执行数据的收集,有了这些数据就能轻松算出覆盖率。

82930

进阶|Chrome还不够神,但你写的扩展程序可以

对于前端工程师而言,其最大的便利就是我们可以应用我们熟悉的 HTML、CSS 、 Javascript 等技术来制作扩展程序。...如果没有工具,这个过程是痛苦的。一次还好,如果一天重复这个动作几十次,就有必要考虑借助工具了。...关于扩展程序的相关文档,可以看看这些文章: (请进入ChokCoco的博客) 建立 Chrome 扩展程序 扩展开发文档 首先,我觉得最重要的,是要了解整个扩展程序的基本架构,有几个非常重要的文件: Content...可以将 content script 看作是网页的一部分,不是它所在的扩展程序的一部分。...扩展程序的消息传递 消息传递存在的必要性是因为内容脚本在网页不是扩展程序的环境中运行,所以它们通常需要某种方式与扩展程序的其余部分通信。

95120

如何在十分钟内创建一个Chrome 插件

曾经想过制作自己的Chrome扩展,却因为觉得过程太复杂打消了念头吗? 好消息,事情并没有你想象的那么复杂!...在我们开始之前,让我们先明确一下 Chrome 扩展到底是什么。Chrome 扩展是一小块旨在增强或修改 Chrome 浏览体验的软件。...步骤4:添加样式 虽然我们扩展的核心功能是防止特定的提交行为,但让用户能立即识别出为什么他们的操作被阻止也非常重要。让我们添加一些样式,以提供视觉提示并增强用户体验。 下面是我们要使用的样式规则。...important 标志会覆盖由于现有样式特异性可能产生的任何潜在冲突。 步骤5:测试扩展 最后一步:填充我们的扩展应该监控的禁用词列表。...总结 如我们所见,构建自己的 Google Chrome 扩展不是不可逾越的挑战。我们从一个明确的目标开始:为 ChatGPT 创建一个保护层,确保敏感信息保密。

45351

【图解Chrome

Chrome 10 周年之际,官方发布了一个系列文章,用图解的方式,清晰的讲解了现代浏览器的运行原理。...这是因为 HTML 规范的主要原则是优雅的处理这些错误,不是严格检查。 如果你这些规范感到好奇,可以阅读 HTML 规范中的 “解析器中的错误处理和奇怪案例介绍” 部分。...如果 “预加载扫描” 发现有类似 或 这样的标签时,会由 HTML 解析器该资源生成一个 Tokens,然后在浏览器进程中,通过网络或者本地缓存来加载资源。...V8 团队深入研究: https://mathiasbynens.be/notes/shapes-ics #提示浏览器如何加载资源 HTML 遇到 JS 脚本则暂停 HTML 的解析,这并不是绝对的。...如果你 Chrome 的默认 CSS 是什么样的有兴趣,可以在源码中看到具体细节。

4.7K50

2020年值得你去试试的10个React开发工具

React Sight 除了上面的扩展外,我们需要提到另一个Chrome 扩展程序React Sight,它可以帮助你在检查React应用程序时发挥作用。...这里说的是之一不是唯一,因为有很多不错的其他IDE也非常棒,例如Sublime,IntelliJ和Vim。...本质上,它是一组为完成与React相关任务的扩展包,在一般情况下,VS在解析和在做一般JS需求时做的出色,但这个小工具套包将它带入了一个新的高度。...Path intelliSense:最后,与上一个扩展名内联,在当你不是处理大型项目的唯一一人时,记住所有路径和文件名变得非常困难和麻烦。此扩展名将帮助您自动完成本地导入的路径。...React-Proto 如果你代码不太感兴趣,而对视觉设计更感兴趣,那么也许react-proto就是适合你的工具。有了它,您可以使用拖放来创建UI原型,不必为其编写代码。

7.8K20
领券