【谷歌扩展程序入门】简单制作一个查看网页结构的扩展程序

news2024/10/7 14:22:38

简言

在想看网页结构的时候一般会F12查看元素内容。
太麻烦了 还不简单方便。

扩展程序

扩展建立在诸如 HTML、JavaScript 和 CSS 之类的 Web 技术之上。它们在单独的沙盒执行环境中运行并与 Chrome
浏览器交互。

扩展允许您通过使用 API 修改浏览器行为和访问 Web 内容来“扩展”浏览器。

基于上面情况,各浏览器的扩展程序可以帮助我们实现一键操作。
以谷歌浏览器为例:
谷歌扩展程序官网需要科学上网才可以访问。
下面是别人翻译的网站:中文的扩展程序网址.

编写扩展程序

初始化

  1. 在项目中创建一个文件夹 ,例如:
    在这里插入图片描述
  2. 文件夹内创建扩展程序配置json文件,文件名manifest。
    在这里插入图片描述

值得一提的是,如果你是使用的vscode。可以查找下相关插件,
我安装了 Chrome Extension Manifest JSON Schema 。
没找到 相关扩展程序api插件。。

  1. 编写配置文件manifest。
    下面图是一个简单的配置,更多配置请到官网了解详情。
    在这里插入图片描述

  2. 浏览器加载扩展程序。
    首先找到扩展程序列表页
    在这里插入图片描述
    打开开发者模式,就可以加载扩展程序了。点击后会让你选择文件夹 ,就选择刚才创的那个文件夹,我的是showBlock。
    不出意外的话,成功!
    在这里插入图片描述

  3. 然后固定 我们的扩展程序。
    在这里插入图片描述

编写交互弹窗页 和逻辑

交互弹窗本质就是一个html页面。

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>哈哈</title>
  <style>
    * {
      padding: 0;
      margin: 0;
    }

    .box {
      width: 300px;
      height: 300px;
      overflow: hidden;
    }

    .btn {
      margin-top: calc(50% - 20px);
      margin-left: calc(50% - 50px);
      width: 100px;
      height: 40px;
      line-height: 40px;
      text-align: center;
      border-radius: 10px;
      cursor: pointer;
      outline: 1px solid #eaeaea;

    }

    .btn:hover {
      font-weight: bold;
      outline: 1px solid red;
    }
  </style>
</head>

<body>
  <div class="box">
    <div class="btn">显示页面元素外框</div>
  </div>
  <script type="text/javascript" src="index.js"></script>

</body>

</html>

脚本index.js逻辑:
1.绑定按钮事件
2.编写显隐当前tab页的div的样式逻辑。
3. 通过扩展程序特定的api 查找当前tab页id,以及将css样式内容追加到当前tab页。

const btnDom = document.querySelector(".btn");
btnDom.addEventListener("click", async (e) => {
  let str = e.target.innerText;
  //  查询当前页面id
  let [tab] = await chrome.tabs.query({ active: true, currentWindow: true });
  let cssStr = " div {outline:1px solid red !important;}";
  console.log(e, str, str === "显示页面元素外框");
  if (str === "显示页面元素外框") {
    btnDom.textContent = "隐藏页面元素外框";
    // chrome.scripting.executeScript({
    //   target: { tabId: tab.id },
    //   func: show,
    //   args:{isShow:true}
    // });
    //  将css样式内容 添加到当前tab页
    chrome.scripting.insertCSS({
      target: { tabId: tab.id },
      css: cssStr,
    });
  } else {
    btnDom.textContent = "显示页面元素外框";
    //  将添加的css样式内容 从当前tab页删除
    chrome.scripting.removeCSS({
      target: { tabId: tab.id },
      css: cssStr,
    });
  }
});
function show(isShow) {
  if (isShow) window.console.log("显示外框");
  else window.console.log("隐藏外框");
}

效果

更改内容的本地扩展程序不用删除再添加,他会自动更新。
在这里插入图片描述

在这里插入图片描述

结语

至此,一个简单的谷歌扩展程序就做好了。如果你用其他的浏览器,请查看其他浏览器扩展程序的官网。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/444844.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

wsl2-ubuntu20编译Lineage17(Android10)

WSL2安装Ubuntu20 wsl2安装 略 安装Ubuntu20 wsl.exe --list --online 列出当前支持的所有系统&#xff0c;不过这个命令是从https://raw.githubusercontent.com/microsoft/WSL/master/distributions/DistributionInfo.json来获取&#xff0c;所以有很大概率会失败。失败就…

解忧杂货铺(三):工作相关资源搜集

1、概述 此文档记录一些对自己很有用的小工具或者其他资源的链接 2、资源 2.1 Hightec生成HEX的方法 Hightec生成HEX的方式https://blog.csdn.net/qq_31225611/article/details/113696362 2.2 UML各个图解析 UML图https://blog.csdn.net/qq_35423190/article/details/1250…

ChatGPT: 深入解读OpenAI的语言模型技术

ChatGPT: 深入解读OpenAI的语言模型技术 引言 引言部分旨在介绍ChatGPT是什么&#xff0c;为什么它是近年来最受欢迎的语言模型之一&#xff0c;并概述本文的主要内容。 1.1 简介 ChatGPT是由OpenAI开发的一种基于深度学习技术的对话生成模型。它采用了最先进的自然语言处理技…

python之流程控制练习题(二)

1、计算1~100的和&#xff08;包含1和100&#xff09;2、计算1~6的乘积&#xff08;包含1和6&#xff09;3、计算1~100之间偶数的和&#xff08;包含1和100&#xff09;4、计算1~100之间可以被3又能被5整数的数的个数&#xff08;包含1和100&#xff09;5、使用循环&#xff0c…

Uboot、Linux BSP定制,最小系统移植

目录 一、linux操作系统支持哪些处理器 二、linux支持哪些版本 三、linux支持哪些外设IP 四、 现有操作系统举例 一、linux操作系统支持哪些处理器 目前已经linux SOC有Cortex-A5x2 Cortex-A9x4,Cortex-A53x4&#xff0c;Riscv-v 二、linux支持哪些版本 已经支持的linux版…

氧气与肠道菌群失调

谷禾健康 健康的肠道微生物群特点是氧气含量低&#xff0c;并且存在大型专性厌氧菌细菌群落&#xff0c;这些共生菌通过限制肠道病原体的扩张为宿主提供益处。 那么是什么导致肠道健康走下坡路&#xff0c;是什么原因引起肠道菌群失调&#xff0c;在科学界一直有2种观点&#x…

转化率暴增的秘密,如何使用营销自动化?

我们生活在自动化时代&#xff0c;聪明的公司正在利用技术将手动流程转变为自动流程。营销自动化是指使用软件、插件、人工智能和分析工具来执行常见和重复的营销流程&#xff0c;例如发送电子邮件和为网站访问者部署应用内消息。 而SaleSmartly&#xff08;ss客服&#xff09…

Linux用户的分类与家目录,ls、pwd、cd、mkdir、touch、rmdir、rm指令与选项等

Linux中用户的分类与用户的家目录 在Linux当中&#xff0c;用户的分类只分为两类&#xff0c;一类叫做超级用户root&#xff0c;还有就是其他也就是传说中的普通用户。我们刚刚登进去时&#xff0c;默认所处的目录是***/root或者/home/用户名***&#xff0c;比如说/root, /hom…

deepstream开发学习笔记: 追踪越界

main.cpp 文件解析 1. 创建元素前的准备 GStreamer是一个开源的流媒体框架&#xff0c;用于构建音频和视频流应用程序。它提供了一组库和工具&#xff0c;可以通过它们将多个组件&#xff08;element&#xff09;组合在一起以构建流媒体应用程序。以下是对几个常见组件的简要解…

仅需三步,快速打造指标数据应用

Kyligence Zen 一站式指标平台&#xff0c;致力于通过低代码的使用体验&#xff0c;帮助企业简洁高效地开发指标数据应用&#xff0c;将数据价值转化为业务洞察。 下面我们以零售交易和绩效管理场景为例&#xff0c;一起来看下如何通过简单三步&#xff0c;快速打造指标数据应用…

初始Sentinel

目录 雪崩问题及解决方案 服务保护技术对比 Sentinel介绍和安装 微服务整合Sentinel 雪崩问题及解决方案 微服务调用链路中的某个服务故障&#xff0c;引起整个链路中的所有微服务都不可用&#xff0c;这就是雪崩。 解决雪崩问题的常见方式有四种&#xff1a; 超时处理&…

ubuntu(20.04)-shell脚本(3)-sed-mysqldump

1.sed cmd&#xff1a; sed 选项 ‘指令’ 文件 sed指令保存到文件中&#xff1a;sed 选项 -f 包含sed指令的文件 文件 sed的常用选项&#xff1a; -r&#xff1a;使用扩展正则表达式 -e&#xff1a;它告诉sed将下一个参数解释为一个sed指令&#xff0c;只有当命令行…

day14 信号机制(下)

目录 信号集、信号的阻塞 信号集、信号的阻塞 有时候不希望在接收到信号时就立即停止当前执行&#xff0c;去处理信号&#xff0c;同时也不希望忽略该信号&#xff0c;而是延时一段时间去调用信号处理函数。这种情况可以通过阻塞信号实现。 信号的阻塞概念&#xff1a; 信号…

234:vue+openlayers 加载本地shp数据,在map上显示图形

第234个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+openlayers中利用shapefile读取本地的shp数据,并在地图上显示图形。 直接复制下面的 vue+openlayers源代码,操作2分钟即可运行实现效果 文章目录 示例效果安装引用配置方式示例源代码(共143行)相关API参考:专栏…

自然语言处理 —— 03 统计语言模型

一、背景 统计语言模型的理论基础是信源-信道模型,这两个模型都基于马尔可夫假设,即当前的事件只依赖于前面的一些事件。在统计语言模型中,当前的单词只依赖于前面的一些单词,而在信源-信道模型中,接收端只能看到传输过程中的有限的信息,而不知道整个传输过程。信源-信…

ASEMI代理ADI亚德诺AD8638ARJZ-REEL7车规级芯片

编辑-Z AD8638ARJZ-REEL7芯片参数&#xff1a; 型号&#xff1a;AD8638ARJZ-REEL7 偏移电压&#xff1a;3μV 输入偏置电流&#xff1a;1.5 pA 输入失调电流&#xff1a;7 pA 输入电压范围&#xff1a;−0.1~ 3V 共模抑制比&#xff1a;133 dB 输入电阻&#xff1a;22.…

Nuxt3中使用swiper

参考&#xff1a;nuxt3&#xff1a;swiper实现轮播效果_nuxt 使用swiper_snowli的博客-CSDN博客再引入swiper时&#xff0c;尝试了npm 包&#xff1a; swiper、vue-awesome-swiper等&#xff0c;尝试在nuxt3里增加plugin的方式引入&#xff0c;都没有成功&#xff0c;个人感觉应…

材料科学基础名词解释|第二章 晶体缺陷

第二章 晶体缺陷 1、空位形成能&#xff1a;在某一空位周围的原子&#xff0c;它们在靠近空位一侧失去了正常的原子作用力&#xff0c;平衡位置向空位存在的地方移动&#xff0c;引起空位周围晶格畸变&#xff0c;系统能量增高&#xff0c;这部分增高的能量叫做空位形成能。 …

【CSDN周赛】第46期题解

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;花无缺 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! 本文由 花无缺 原创 本文章收录于专栏 【CSDN周赛】 本篇文章目录 &#x1f30f;一、吃吃吃&#x1f338;题目描述&#x1f338;题解 &#x1f30f;二、n …

论文的总体结构及质量控制

要写出一篇高质量AI领域的论文&#xff0c;首先要搞清楚论文由哪几部分组成&#xff0c;即论文的总体结构。同时&#xff0c;还要了解AI论文的质量评价与质量控制的指标。这样做的目的是为了弄明白AI论文的结构以及什么样的AI论文才是好的论文。 通常一篇AI论文的总体结构主…