「Editor Keeper ⭐」 で「ブログトップ」へも直行できる様にする
「Editor Keeper ⭐」は、本来は「管理トップへ」のリンクを「編集画面」を閉じずに「別タブ」で開く様にするツールです。 下は「Ameblo Writer (Compact)」の編集画面ですが、「⏏」のアイコンが表示されて「Editor Keeper ⭐」が起動した事を示していて、これをクリックすれば「管理トップ」が別タブに表示されます。
このボタンの本体は、下の ❶「管理トップへ」のリンクです。
「編集」中に「編集画面」の外に出るにはこのボタンが必要ですが、「自ブログ内の検索」をしたい場合など、「管理トップ」よりも「ブログページ」を開きたい事が時々あります。 ヘッダーには「ホームへ」のリンクがありますが、私はこちらが必要になった覚えがありません。
出来るなら「Ameblo Writer」のアレンジで、自分の「ブログトップ」を開くスイッチを作りたかったのですが、❷ の自分のIDを押して、開いたメニューの ❸「ブログ」を押す必要があり、CSSでボタンを作る事は無理です。
しかし JavaScriptでは、「ブログトップ」を開くスイッチを作る事が出来ます。
「Shift」キーを押しながらクリック
別のボタンを生成する事は可能ですが、「管理トップへ」を「Shift + 左クリック」する事で「ブログトップ」を開くというシンプルな方法を採りました。 この様にしておけば、「Ameblo Writer」のアレンジが無い場合も、❶ のリンクの「Shift + クリック」で「ブログトップ」を開く事が出来ます。
下は、今回追加したコードで、「target」は「管理トップへ」のリンクの事です。
最後の行の「window.open」で、Chromeでは別ウインドウ、Firefoxでは別タブが開きます。 「open」メソッドはブラウザで解釈の違いがある様です。
「Editor Keeper ⭐」ver. 1.1
このツールは Chrome版 / Firefox版の「Tampermonkey」で動作します。 以下のコードを「Tampermonkey」の新規作成画面にコピー&ペーストして保存する事で、このツールを利用する事が出来ます。
〔コピー方法〕 軽量シンプルなツール「PreBox Button 」を使うと
コード枠内を「Ctrl+左Click」➔「Copy code 」を「左Click」
の操作で、掲載コードのコピーが可能になります。
〔 Editor Keeper ⭐ 〕 ver. 1.1
// ==UserScript== // @name Editor Keeper ⭐📛 // @namespace http://tampermonkey.net/ // @version 1.1 // @description 編集画面を閉じず移動する // @author Ameblo Writer User // @match https://blog.ameba.jp/ucs/entry/srventry* // @exclude https://blog.ameba.jp/ucs/entry/srventrylist.do* // @grant none // ==/UserScript== let retry=0; let interval=setInterval(wait_target, 100); function wait_target(){ retry++; if(retry>10){ // リトライ制限 10回 1sec clearInterval(interval); } let target=document.querySelector('.l-gHeaderLeft__link a'); // 監視 target if(target){ clearInterval(interval); main(); }} function main(){ let target=document.querySelector('.l-gHeaderLeft__link a'); target.setAttribute('target', '_blank'); target.onclick=function(){ if(event.shiftKey){ event.preventDefault(); let amebaId=document.querySelector('.amebaId').textContent; if(amebaId){ let blogurl='https://ameblo.jp/' + amebaId + '/'; window.open(blogurl, "_blank"); }}} let ua=0; // Chromeの場合のフラグ let agent=window.navigator.userAgent.toLowerCase(); if(agent.indexOf('firefox') > -1){ ua=1; } // Firefoxの場合のフラグ // 以下 起動表示CSSを適用 📛 let css; if(ua==0){ css= '.l-gHeaderLeft__link a:before { content: "" !important; }'+ '.l-gHeaderLeft__link a:after { content: "⏏" !important; font-size: 24px !important; '+ 'line-height: 16px !important; top: 2px !important; left: 6px !important; }'+ '.l-gHeaderLeft__link a { text-indent: -6.3em !important; height: 31px !important; padding-top: 3px; }'+ '.l-gHeaderLeft__link a:hover { text-indent: 0.4em !important; background: #fff !important; '+ 'width: calc(28px + 6.7em) !important; box-shadow: -10px 0 1px 0 var(--bgc1) !important; } '+ '#globalHeader #gHeaderLeft { width: 280px; }'; } if(ua==1){ css= '.l-gHeaderLeft__link a:before { content: "" !important; }'+ '.l-gHeaderLeft__link a:after { content: "⏏" !important; font-size: 24px !important; '+ 'line-height: 16px !important; top: 3px !important; left: 6px !important; }'+ '.l-gHeaderLeft__link a { text-indent: -6em !important; height: 30px !important; padding-top: 4px; }'+ '.l-gHeaderLeft__link a:hover { text-indent: 0.7em !important; background: #fff !important; '+ 'width: calc(28px + 6.7em) !important; box-shadow: -10px 0 1px 0 var(--bgc1) !important; } '+ '#globalHeader #gHeaderLeft { width: 280px; }'; } let style_tag=document.createElement("style"); // css設定styleタグ style_tag.type="text/css"; style_tag.appendChild(document.createTextNode(css)); document.querySelector('.l-body').appendChild(style_tag); }
「Editor Keeper ⭐」最新版について
旧いバージョンの JavaScriptツールは、アメーバのページ構成の変更で動作しない場合があり、導入する場合は最新バージョンをお勧めします。
●「Editor Keeper ⭐」の最新バージョンへのリンクは、以下のページのリンクリストから探せます。