ボクの見える範囲で立て続けに2件,AutoPagerizeのFORCE_TARGET_WINDOWにまつわる問題が起きていたので,エントリを立てることにした.FORCE_TARGET_WINDOW – Google 検索を眺めてみた感じ,既出と言われればその通りの話題のようだけど,誰かひとりの役にでも立てばいいと,そんなスタンスで書こう.
AutoPagerizeでページの継ぎ足しが起こると,閲覧ページ内のすべてのリンクに「target=”_blank”」が加えられる.つまり,別ウィンドウや別タブで開くようになるってことだ.AutoPagerize0.0.7でこの仕様が取り入れられたようで,現行のバージョン0.0.14でもスクリプト冒頭で宣言される「FORCE_TARGET_WINDOW」の値が「true」になっていると,このような挙動になる.
例えばAutoPagerizeが動いている状態でGoogleで何かを検索し,検索結果の3ページ目にあるリンクをクリックし,同一のタブ(もしくはウィンドウ)でリンク先のページを開いたとする.そのあと検索結果のページに戻ると,そこは検索結果の3ページ目ではなく,1ページ目なのだ.この「戻ったつもりが,もともといた場所に戻れない」問題を防ぐために,_blankで開くようになっているだろう.AutoPagerizeの作者であるid:swdyhさん自身は,
リンクをどう開きたいかは、基本的にはユーザに任せるのがいいと思うんだけれど、
AutoPagerizeでが動いてるような場合は、別ウィンドウがいいのかも、と思ってそうしてみた。
別ウィンドウで開きたい、とうより、同じウィンドウでリンクを開いて戻ったときに、
いっきにロードがかかるのを避けたい。
だからtargetの書きかえは、AutoPagerの起動時じゃなくて、
継ぎ足しロードが終ったあと。
と言っている.
「なんで別タブで開くんだよぅ!」と思っていた人は,Firefoxの右下の方にいるお猿さんを右クリックして「ユーザスクリプトの管理」を開いて,AutoPagerizeを編集して,FORCE_TARGET_WINDOWの値を「false」に書き換えて使いましょう.また,AutoPagerizeの新バージョンをインストールすると古いスクリプトに上書きインストールされるので,そのときも値を書き換えるのを忘れないように!
swdyhさんよりコメントにてご指摘を頂きまして,誤った記述を削除しました.