ChromeもしくはFirefoxのプラグイン機能で、URLの特定部分を毎回変更して再利用したいのですが、何か良いプラグインはありますでしょうか?

具体的には、http://www.abc.com/<変数>/statusの様なBookmarkを保存でき、毎回変数の部分を入力すると結果が得られるようなプラグインを探しています。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2017/04/19 09:55:03

ベストアンサー

id:a-kuma3 No.1

回答回数4973ベストアンサー獲得回数2154

Bookmarklet でいけそうな感じです。
試しに、人力検索のウォッチリストへジャンプする際に、はてなID を入力するようにしてみました。

((url) => {
    const d_ = document;

    const variable = "@@@";
    const width = 60;
    const c_style_ = {
        backgroundColor: "green",
        color: "white",
        position: "absolute",
        width: (width + 20) + "ex",
    };
    const i_style_ = {
        fontFamily: "monospace",
        fontSize: "10.5pt",
        width: width + "ex",
        margin: "2em auto",
        display: "block",
        border: "none",
        padding: "2px 1px",
    };

    // container
    const c_ = d_.body.appendChild(Object.assign(d_.createElement("div"), {
        id: "a-kuma3",
    }));
    Object.assign(c_.style, c_style_);

    // input
    const i_ = c_.appendChild(Object.assign(d_.createElement("input"), {
        type: "text",
        value: url,
        onkeydown: function(ev) {
            switch (ev.keyCode) {
            case 13: // Enter
                location.href = this.value;
                this.style.display = "none";
                const m_ = c_.appendChild(Object.assign(d_.createElement("div"), {
                    innerHTML: "Now Loading ...",
                }));
                Object.assign(m_.style, i_style_);
                break;
            case 27: // ESC
                c_.parentNode.removeChild(c_);
                break;
            }
        },
    }));
    Object.assign(i_.style, i_style_);

    // position
    const h_ = d_.documentElement;
    Object.assign(c_.style, {
        top: (h_.scrollTop + h_.clientHeight / 2 - c_.clientHeight / 2) + "px",
        left: (h_.scrollLeft + h_.clientWidth / 2 - c_.clientWidth / 2) + "px",
    });

    // select variable part
    i_.select();
    i_.selectionStart = url.indexOf(variable);
    i_.selectionEnd = i_.selectionStart + variable.length;


})("http://q.hatena.ne.jp/@@@/watchlist");

Hatena::Let にも置いてみました。
http://let.hatelabo.jp/a-kuma3/let/hLHW7JSExeZ_

コードの末尾に対象の URL が指定してあって、"@@@" を書き換えて送るような感じになってます。
Bookmarklet を動かすと、小窓が表示されて "@@@" が選択状態になっています。
そこを書き換えて、Enter キーを押すと指定の URL のページに遷移します。
ESC キーを押すと小窓が閉じます。

試したのは、Firefox だけですが、chrome でも動くと思います。

id:kyoshiike

ありがとうございました。
Bookmarkletというのは、実は今回ご紹介いただくまで知らなかったのですが
このようにScriptをBookmarkに埋め込めるのですね。
とても勉強になりました。

2017/04/12 18:41:43
  • id:TransFreeBSD
    いまさらかも知れませんけれど、置き換えるのが1ヶ所ならchromeなら検索エンジンの設定でいけると思います。
    http://techmemo.biz/sw/google-chrome-search-engine-manage/
  • id:kyoshiike
    ありがとうございます

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません