表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

ブックマーク機能を使うにはログインしてください。
1/3

リンクを新しいタブで開いて選択状態にするコンテキスト メニュー項目を追加する自作のChromeの拡張機能

 ChromeやEdgeはデフォルトでは、リンクを新しいタブで開いても、新しいタブを選択状態にしてくれないので、新しいタブを選択する手間がかかります。


 Edgeで新しいタブを何回も開く仕事の場合は、とても大変でした。

 また、「小説家になろう」で話数が多い小説の各話の編集リンクを新しいタブで開いていくのも、とても大変でした。


 そのため、リンクを新しいタブで開いて選択状態にするコンテキスト メニュー項目を追加するChromeの拡張機能を自作してみました。


 パブリック ドメインです。


 「コンテキスト メニュー」とは、「マウスの右クリック メニュー」です。


 Chromeの拡張機能はEdgeでも動きます。


 この拡張機能をインストールしてから、リンクの上にマウス カーソルを合わせて右クリックすると、多分、マウスの右クリック メニューの下から2番目に、「リンクを新しいタブで開いて選択状態にする」が追加されて表示されます。

 その「リンクを新しいタブで開いて選択状態にする」をクリックして選択すると、文字通り、リンクのウェブ ページが新しいタブで開かれて、そのタブが選択状態に成ります。



 2024年1月18日の時点の最新のChromeで動作を確認しました。

 2024年1月22日に、仕事で利用させてもらっているパソコンのEdgeで動作を確認しました。



 Githubでもパブリック ドメインで公開しました。

 Bing検索で「github eliphas1810-tools」などで検索してみてください。

 Google検索では検索できません。



 コピーする場合は、2文字の全角空白を4文字の半角空白に置換してください。


 UTF-8という文字コードでファイルに保存してください。



 ①

 Chromeで自作のChromeの拡張機能をディレクトリ単位で指定するので、Chromeの拡張機能のファイルを置くディレクトリを新規作成します。

 ただし、Chromeに指定して読み込んでいるディレクトリを削除すると、その自作のChromeの拡張機能も削除されてしまうので、「ドキュメント」のディレクトリの下などにディレクトリを新規作成します。

 著者は、「SelectNewTab」という名前でディレクトリを新規作成しました。


 ちなみに、Chromeのストアに公開するためには、著作権などの問題が無いアイコンの画像ファイルを用意したりする必要が有るので、少し面倒です。


――――――――――――――――――――

SelectNewTab

――――――――――――――――――――



 ②

 右クリック メニューの権限を得る設定やバック グラウンドで実行する.jsファイルの指定が書かれているmanifest.jsonを用意します。


 ちなみに、マニフェストのバージョン3では、サービス ワーカーは、デフォルトで、必要な場合にだけ起動され、必要が無い場合は終了されてメモリーが解放されるそうです。


/SelectNewTab/manifest.json

――――――――――――――――――――

{

  "name": "SelectNewTab",

  "version": "0.1.0",

  "manifest_version": 3,

  "description": "リンクを新しいタブで開いて選択状態にします。",

  "permissions": ["contextMenus"],

  "background": {"service_worker": "SelectNewTab.js"}

}

――――――――――――――――――――



 ③

 Chromeの拡張機能の本体であるJavaScriptをmanifest.jsonに書いた名前で用意します。


/SelectNewTab/SelectNewTab.js

――――――――――――――――――――

//マウスの右クリック メニューに、この拡張機能が追加した自作のメニューが存在する場合は、それだけを削除

//

//これを起動しないと、Chromeを閉じてから再び開いた場合に、自作のメニューの追加の重複エラーが発生してしまいます。

//

//chrome.runtime.onInstalled.addListener(() => {});を利用すると、Chromeを閉じてから再び開いた場合に、この拡張機能が起動されないので、自作のメニューは存在するが、動作しなく成ってしまいます。

//

chrome.contextMenus.removeAll();


//マウスの右クリック メニューに、自作のメニューを追加

chrome.contextMenus.create({

  id: "SelectNewTab",

  title: "リンクを新しいタブで開いて選択状態にする",

  contexts: ["link"]

});


//マウスの右クリック メニューで、自作のメニューがクリックして選択された時の処理を追加

chrome.contextMenus.onClicked.addListener((info, tab) => {


  //マウスの右クリック メニューで、自作のメニューがクリックして選択された場合

  if (info.menuItemId == "SelectNewTab") {


    //リンクを新しいタブで開いて選択状態にします。

    chrome.tabs.create({url: info.linkUrl, selected: true});

  }

});

――――――――――――――――――――



 ④

 Chromeで「拡張機能」をクリックして選択してから「拡張機能を管理」を選択します。



 ⑤

 「デベロッパー モード」をクリックしてオンにします。



 ⑥

 「パッケージ化されていない拡張機能を読み込む」をクリックして選択します。



 ⑦

 自作のChromeの拡張機能のファイルを置いているディレクトリを選択して「Select」ボタンをクリックします。


 ※

 くり返しに成りますが、Chromeに指定して読み込んでいるディレクトリを削除すると、その自作のChromeの拡張機能も削除されてしまうので、注意してください。

評価をするにはログインしてください。
この作品をシェア
Twitter LINEで送る
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

この作品はリンクフリーです。ご自由にリンク(紹介)してください。
この作品はスマートフォン対応です。スマートフォンかパソコンかを自動で判別し、適切なページを表示します。

↑ページトップへ