読者です 読者をやめる 読者になる 読者になる

livedoor Readerで新しいタブをバックグラウンドで開く

  unsafeWindow.Keybind.add('h', function() {
    var item = unsafeWindow.get_active_item(true);
    if(!item) return;
    var permalink = item.link.replace(/#/, '%23');
    GM_openInTab('http://b.hatena.ne.jp/entry/' + permalink);
  });
  unsafeWindow.Keybind.add('v', function() {
    var item = unsafeWindow.get_active_item(true);
    if(!item) return;
    GM_openInTab(item.link);
  });

hはてブのエントリーページを、vはバックグラウンドで開くように上書き。新しいページを開くときにタブかウィンドウかを選んだり、タブの場合はフォーカスを移すかどうかっていうのはブラウザ側の問題なのでJavaScriptからは操作できない。と思う。なんかうまいこと出来ないかなぁと思ってたらGM_openInTabっていう関数を見つけて、試したらうまくいった。

さらにピンで開くときも同じようにバックグラウンドで開くようにしたかったんだけど、ソース読んだら難しそうだったのであきらめた。保存してあるピンをキューにプッシュして開くってやってるみたいなんだけどこれはキューで開く部分をいじらないとなのかなぁ。