【Google拡張機能入門】Webページの構造を表示する拡張機能を作るだけ

簡単に言うと

Web ページの構造を確認したい場合は、通常、F12 を使用して要素のコンテンツを表示します。
面倒すぎて簡単でも便利でもない。

拡大

拡張機能は、HTML、JavaScript、CSS などの Web テクノロジーに基づいて構築されます。これらは別のサンドボックス実行環境で実行され、
Chrome ブラウザと対話します。

拡張機能を使用すると、API を使用してブラウザを「拡張」し、ブラウザの動作を変更したり、Web コンテンツにアクセスしたりできます。

上記の状況を踏まえると、ワンクリック操作の実現には各ブラウザの拡張機能が役立ちます。
Google Chrome を例に挙げると、
Google 拡張プログラムの公式 Web サイトには科学的にアクセスする必要があります。
以下は他の人が翻訳した Web サイトです:中国語の拡張 URL

拡張子を書く

初期化

  1. プロジェクト内にフォルダーを作成します。例:
    ここに画像の説明を挿入
  2. フォルダー内に拡張機能構成 json ファイルを作成します。ファイル名は「manifest」です。
    ここに画像の説明を挿入

vscode を使用している場合は、これに言及する価値があります。関連するプラグインを見つけることができます。Chrome
Extension Manifest JSON Schemaをインストールしました。
関連する拡張 API プラグインが見つかりませんでした。

  1. 構成ファイルのマニフェストを書き込みます。
    以下の図は簡単な構成ですが、その他の構成については公式サイトをご覧ください。
    ここに画像の説明を挿入

  2. ブラウザは拡張機能をロードします。
    まず拡張機能のリスト ページを見つけて
    ここに画像の説明を挿入
    開発者モードをオンにすると、拡張機能を読み込むことができます。クリックするとフォルダーの選択を求められるので、先ほど作成したフォルダーを選択してください。
    何はともあれ、成功です!
    ここに画像の説明を挿入

  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. 現在のタブ ページの div を表示および非表示にするスタイル ロジックを記述します。
3. 拡張機能固有の API を通じて現在のタブ ページ ID を検索し、CSS スタイル コンテンツを現在のタブ ページに追加します。

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("隐藏外框");
}

効果

コンテンツを変更するローカル拡張機能は削除したり追加したりする必要はなく、自動的に更新されます。
ここに画像の説明を挿入

ここに画像の説明を挿入

エピローグ

この時点で、単純な Google 拡張機能の準備が整いました。他のブラウザをご利用の場合は、他のブラウザ拡張機能の公式サイトをご確認ください。

おすすめ

転載: blog.csdn.net/qq_43231248/article/details/130291518