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

Chrome 插件特性及实战场景案例分析

我们看看官方解释: Chrome Extension是一个小的软件程序,它可以用来定义浏览器的浏览体验,让用户可以根据个人需求或者偏好定制Chrome浏览器的功能和行为,主要使用的技术栈是HTML、Javascript...1)扩展进程中运行Extension Page,Extension Page主要包括backgrount.html和popup.html: backgrount.html中没有任何内容,是通过background.js...创建生成,当浏览器打开时,会自动加载插件的background.js文件,它独立于网页并且一直运行在后台,它主要通过调用浏览器提供的API和浏览器进行交互; popup.html则不同,它有内容,是一个实实在在的页面...,效率低且痛苦,如果能将这些标签进行整理并有序的展示该多好,这里给大家推荐一个Chrome扩展插件:OneTab,该插件将所有打开的标签在新的页面中有序的排列出来,如下图,一目了然。...这样遇到两个问题: 不能所见即所得,看到页面不能知道key值; 所见无法直接修改,需要到另一个管理平台去修改 ; 目前这个在修改内容少的情况下,还是可以操作的,当修改内容很多时,这样操作起来很繁琐,效率很低

1.8K40

Chrome扩展程开发初探

偶然间被ChatGPT提醒,觉得Chrome拓展开发是一个非常不错的方向。 Chrome拓展是扩展浏览器功能的小程序,用户可以通过Chrome Web Store下载和安装。...内容脚本: content_scripts:定义内容脚本,这些脚本将注入到匹配的网页中运行内容脚本可以修改网页内容或监听网页事件。...Chrome 扩展的安全性设计确实不允许在 HTML 页面中直接使用 JavaScript 代码来加载或执行扩展的功能。Chrome 扩展通过内容安全性策略来限制可以在页面上执行的脚本。...; }); }); background background.js 文件是 Chrome 扩展的后台脚本,用于处理长期运行的任务、事件和状态管理。它在浏览器的后台运行,并且在浏览器启动时加载。...content_scripts 在 Chrome 扩展中,content.js 是内容脚本,用于在匹配的网页上执行 JavaScript 代码。

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

    基于Chrome插件的开发工具链

    第一次写插件刚好是一个游,为了帮助在页面上抓错误包和快速检查与各个平台之间的交互参数,这一次则是有一个组件提供的管理工具操作太繁琐,写个工具Hack进去然后实现一键操作的。...后台 后台当然是运行在后台,也分两种,一种是按需加载的“事件页面”(生命周期的形式有点像手机应用开发),另一种是只要chrome进程存在就会一直保持在线的后台。...内容脚本 前面所提到的两种执行环境并不能直接操作网页内容,而这个内容脚本其实就是一个解决这个问题的特殊的脚本环境。 内容脚本必须指定所支持的网页地址,并且在所有匹配的地址中载入这些脚本。...调试 chrome的调试已经非常强大了,在扩展面上打开开发者模式,可以载入正在开发中的插件的文件夹。 后台的调试可以在扩张页面点击插件下面的地址打开调试面板。...content script可以在网页上打开网页的脚本调试面板,然后脚本列表那里有个tab是Content scripts 打包和自动更新 chrome浏览器自带了打包工具,在扩展面上就有。

    65920

    绕过 CSP 从而产生 UXSS 漏洞

    Content Script 是 JavaScript 代码片段,运行在用户浏览器被访问过的页面上(在这种情况下,用户访问的每个页面)。 以下代码来自扩展程序的Content Script: ?...转到包含上面显示的核心易受攻击的函数 popup.js 脚本文件,我们看到以下内容: ? 单击扩展程序的浏览器图标(浏览器的右上键)时会触发上述代码。...我们还有另一个需要克服的阻力:内容安全策略(CSP)。...在示例中,要包含的资源是 popup.html 页面,该页面通常仅在用户单击扩展程序的图标时显示。 通过 iframing 此页面以及之前的 payload,我们有一个无需用户交互的漏洞利用: ?...披露和补救 由于没有明确的方式可以联系任何一位扩展所有者(各个 Chrome 扩展程序面上会尽量显示更少的联系人信息)。

    2.7K20

    写html页面没意思,来挑战chrome插件开发

    谷歌浏览器插件开发是指开发可以在谷歌浏览器中运行扩展程序,可以为用户提供额外的功能和定制化的体验。谷歌浏览器插件通常由HTML、CSS和JavaScript组成,非常利于前端开发者。...的service_workerAPI可以打开一个独立后台运行脚本。...id onConnect onMessage sendMessage content.js运行一个独立、隔离的环境,它不会和主页面的脚本或者其他插件的内容脚本发生冲突 有2种方式添加content脚本...某天不小心让你的女神生气了,为了能够道歉争取到原谅,你是否可以写一个道歉信贴到每一个面上,当女神打开网站,看到每个页面都会有道歉内容。...通过这些方法,您可以从内容脚本扩展程序发送一次性 JSON 可序列化消息,或者从扩展程序内容脚本发送。如需处理响应,请使用返回的 promise。

    34311

    用 Vue 开发自己的 Chrome 扩展

    但是与网页不同的是,扩展程序可以访问许多特定于浏览器的 API,这才是有趣的地方。 在本教程中,我将向你展示如何为 Chrome 构建一个能够改变新标签行为的简单扩展。...你刚刚制作了一个 Chrome 扩展程序。 覆盖 Chrome 的新标签 为了在打开新选项卡时迎接我们的是自己的扩展程序。可以通过使用 Override Pages API 来完成此操作。...注意:在你取得进展之前,请务必停用其他能够覆盖 Chrome 新标签扩展程序。一次只允许一个扩展改变这种行为。 首先创建一个要显示的页面,而不是新的标签。我们称之为 tab.html。...你可以通过在 Chrome扩展程序面上单击 Hello World 扩展程序的 reload 图标来执行此操作。 ? 重新加载扩展 现在,当你打开新标签时,你的自定义消息会出现。...最后,请注 scripts 文件夹的两个脚本一个用于删除 eval 用法以符合 Chrome Web Store 的内容安全策略,另一个用于当你要把扩展上传到Chrome Web Store时将其打包到

    2.8K30

    一键下载百度文库豆丁道客巴巴文档,支持导出PDF,Word,txt 文件

    脚本内容如下,其实就一行代码,开启这个脚本所有链接都会在新标签打开。...如果你使用的Mac系统,上面的Windows软件就没法用了,推荐下面的Chrome扩展和油猴脚本。...Chrome扩展 比如这个百度文库https://wenku.baidu.com/view/021014797dd184254b35eefdc8d376eeaeaa172f.html 剩余3不能看。...安装 https://github.com/wxbool/baidu-wenku 这个Chrome扩展后右侧多了清理dom和导出文档按钮。 ? 点击清理dom会自动运行。 ? ? ?...油猴脚本 https://greasyfork.org/zh-CN/scripts/405373 这个脚本会将百度文库内文章中的文本内容转换为 word 并下载,关于油猴脚本的安装使用见之前文章 实用油猴脚本推荐

    19.5K70

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

    "扩展" 和 "插件",其实都是软件组件的一种形式,Chrome 只不过是把两种类型的组件分别给与了专有名称,一个叫 "扩展",另一个叫 "插件"。...scripts -- 内容脚本 Content scripts 脚本是指能够在浏览器已经加载的页面内部运行的 javascript 脚本。...(刚开始使用的时候可以理解为一个东西) 应用和扩展程序通常需要长时间运行脚本来管理某些任务或状态,这就是后台页面的作用。...扩展程序小结 一个扩展程序最重要的我觉得就是上述的三块内容: 1.Content scripts -- 内容脚本 2.popup -- 弹窗页面 3.background -- 后台网页 我们通过一个...扩展程序的消息传递 消息传递存在的必要性是因为内容脚本在网页而不是扩展程序的环境中运行,所以它们通常需要某种方式与扩展程序的其余部分通信。

    1K20

    【译】使用 Web Workers 优化 JavaScript 应用程序性能

    如果你尚未安装,则可以选择适用于 Google ChromeChrome 扩展程序。 本文章假设读者拥有 HTML,CSS 和 JavaScript 的基本知识。...Web Workers 根据 MDN 的文档:“ Web Worker为Web内容在后台线程中运行脚本提供了一种简单的方法。线程可以执行任务而不干扰用户界面。”...无法直接从文件系统运行 worker。它只能通过服务器运行。 创建示例程序 我们将创建一个示例程序来演示运行脚本对 Web 应用程序性能的影响。...确保在继续之前已在 Chrome 中安装了 Web Server for Chrome 扩展程序。...你会观察到这些图片的移动静止了几秒,这是一个长时间运行脚本如何影响 Web 应用程序性能的直观展示。

    1.8K10

    【实践】Chrome浏览器客户端调试从入门到奔溃

    的样式信息,此时可以在右侧进行一个修改,修改即可在面上生效, 灰色的element.style样式同样可以进行添加和书写,唯一的区别是,在这里添加的样式是添加到了该元素内部,实现方式即:该div元素的...scripts 是 Chrome 的一种扩展程序,它是按照扩展的ID来组织的,这些文件也是嵌入在页面中的资源,这类文件可以读写和操作我们的资源,需要调试这些扩展文件,则可以在这个目录下打开相关文件调试...,但是几乎我们的项目还没有相关的扩展文件,所以啥也看不到,平时也不需要关心这块 image 无结果 6.Network网络请求标签:可以看到所有的资源请求,包括网络请求,图片资源,html,css,js...8.Profiles标签可以查看CPU执行时间与内存占用,不做过多介绍 9.Resources标签会列出所有的资源,以及HTML5的Database和LocalStore等,你可以对存储的内容编辑和删除...Other:请求是由其他进程发起的,比如用户点击一个链接跳转到另一个页面或者在地址栏输入URL地址。 Size 从服务器下载的文件和请求的资源大小。

    3.7K30

    ​现代浏览器内部揭秘(第一部分)

    在进程和线程上执行程序 ? 进程与线程 图四:进程作为边界框,线程作为抽象鱼在进程中游动 在深入学习浏览器架构之前需要了解的另一个理论是进程与线程。进程可以被描述为是一个应用的执行程序。...操作系统为进程提供了一个可以使用的“一块”内存,所有应用程序状态都保存在该私有内存空间中。关闭应用程序时,相应的进程也会消失,操作系统会释放内存。 ?...Chrome 进程 图 9:不同进程指向浏览器 UI 的不同部分 还有更多进程如扩展进程与应用进程。...如果某个标签失去响应,你可以关掉这个标签,此时其它标签依然运行着,可以正常使用。如果所有标签运行在同一进程上,那么当某个失去响应,所有标签都会失去响应。这样的体验很糟糕。 ?...在一个面上打开开发者工具,让 iframe 在不同的进程上运行,这意味着开发者工具必须在幕后工作,以使它看起来无缝。

    68220

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

    如何实现一个谷歌浏览器插件 一、什么是Chrome插件? ★Chrome插件就是我们运行Chrome浏览器 上的扩展程序,比如说vue-devtool。..."16": "img/icon.png", // 扩展程序面上的图标 "32": "img/icon.png", // Windows计算机通常需要此大小..."48": "img/icon.png", // 显示在扩展程序管理页面上 "128": "img/icon.png" // 在安装和Chrome Webstore...content-scripts中的JS程序和原始页面共享DOM,但是和原始页面的JS不是在同一个环境下运行的,所以我们是无法访问到原始页面中定义的变量的因为是是注入到页面中的,所以在安全策略上不能访问大部分的...Chrome插件", // 图标悬停时的标题 "default_popup": "popup.html" // 在工具栏点击插件弹出的页面 }, tips:打开的任何页面都会运行插件程序

    1.4K31

    【前端工具】Chrome 扩展程序的开发与发布 -- 手把手教你开发扩展程序

    "扩展" 和 "插件",其实都是软件组件的一种形式,Chrome 只不过是把两种类型的组件分别给与了专有名称,一个叫 "扩展",另一个叫 "插件"。...-- 内容脚本 Content scripts 脚本是指能够在浏览器已经加载的页面内部运行的 javascript 脚本。...(刚开始使用的时候可以理解为一个东西) 应用和扩展程序通常需要长时间运行脚本来管理某些任务或状态,这就是后台页面的作用。...扩展程序小结 一个扩展程序最重要的我觉得就是上述的三块内容: Content scripts -- 内容脚本 popup -- 弹窗页面 background -- 后台网页 ?...扩展程序的消息传递 消息传递存在的必要性是因为内容脚本在网页而不是扩展程序的环境中运行,所以它们通常需要某种方式与扩展程序的其余部分通信。

    1.9K30

    【前端工具】Chrome 扩展程序的开发与发布 -- 手把手教你开发扩展程序

    "扩展" 和 "插件",其实都是软件组件的一种形式,Chrome 只不过是把两种类型的组件分别给与了专有名称,一个叫 "扩展",另一个叫 "插件"。...-- 内容脚本 Content scripts 脚本是指能够在浏览器已经加载的页面内部运行的 javascript 脚本。...(刚开始使用的时候可以理解为一个东西) 应用和扩展程序通常需要长时间运行脚本来管理某些任务或状态,这就是后台页面的作用。...扩展程序小结 一个扩展程序最重要的我觉得就是上述的三块内容: Content scripts -- 内容脚本 popup -- 弹窗页面 background -- 后台网页 ?...扩展程序的消息传递 消息传递存在的必要性是因为内容脚本在网页而不是扩展程序的环境中运行,所以它们通常需要某种方式与扩展程序的其余部分通信。

    1.4K30

    CSS精简工具-CSS remove and combine

    and combine插件概述 在我们做网站添加CSS样式的时候就会用到把很多CSS样式合并一起下载的现象,这个很好的习惯,可以优化网站的运行速度。...它可以从页面上所有样式表中删除未使用的选择器,并将结果组合到一个可以下载的样式表中,这不仅可以整理和优化样式表,还可以将它们组合成一个文件,然后可以下载该文件。...扩展使用的方法是基于消除所有ID和类的选择器,这些选择器引用不在页面上的ID和类。还有一个快速查看对话框,该对话框将在页面上为用户提供有关已使用和未使用的选择器数量的信息。...2.离线安装的方法参照一下方法:老版本chrome浏览器,首先在标签输入【chrome://extensions/】进入chrome扩展程序,解压你在本站下载的插件,并拖入扩展程序页面,它会提示你是否安装该插件...3.安装方法把下载好的crx文件后缀改为.zip然后在谷歌浏览器中直接加载已解压的程序即可 4.在chrome浏览器安装好后,在浏览器的右上方会出现CSS remove and combine插件的按钮

    1.7K30

    前端调试入门

    下图1为Chrome浏览器控制台,图2为Firefox控制台。 1.jpg 2.jpg 1.1脚本执行 上图1中,点击tab3 进入“console”Tab,即为脚本执行区域。...1.2网络请求 上图1中,点击tab5进入“Network”Tab,可以看到当前的所有网络请求,包括url,请求参数,返回数据,请求cookie等详细信息。...然后刷新页面或者执行其他可以让程序运行到断点位置的逻辑(比如触发一个事件,console裸调指定方法函数等)。...下图5是在一个活动页面对注销逻辑打断点的示意图,图中,我们事先对login.js的913行打了一个断点,然后点击页面上的注销按钮,程序运行到断点位置暂停。...如果想在运行到断点位置执行其它逻辑,可以直接在console区域运行相关脚本。 3代理 前端代理是指用本地文件替换网络文件的一个动作,代理可以用来调试问题。

    2.3K330

    《手把手教你》系列技巧篇(五十二)-java+ selenium自动化测试-处理面包屑(详细教程)

    它是用户一个程序或文件中确定和转移他们位置的一种方法。 2.什么是面包屑导航?...面包屑就是我们经常看到的“主分类>一级分类>二级分类>三级分类>……>最终内容页面”这样的方式,一种表达内容归属的界面元素,如下图所示: 为了浏览体验,一般情况只有3级,首页>栏目>内容,3层目录结构可以让用户随时随地的找到自己所在的位置又能保证栏目分类后的各个栏目的权重不至于太分散...3.测试场景   不仅在网页导航需要处理面包屑,在实际的测试脚本中,有可能需要处理面包屑。处理面包屑主要是获取其层级关系,以及获得当前的层级。...找到面包屑所在的div或ul,然后再通过该div或ul找到下面的所有链接,这些链接就是父层级。最后不是链接的部分就应该是当前层级了。...1.运行代码,右键Run AS->Java Appliance,控制台输出,如下图所示: 2.运行代码后电脑端的浏览器的动作,如下小视频所示: 5.小结 因为现在这个导航比较流行,所以宏哥特地的拿出一篇文章的篇幅对其进行单独讲解一下

    69920
    领券