« 【JavaScript】IE7でリンクオブジェクトのhrefが参照出来なくなるケース有り | トップページ | スクリプトバージョンアップのお知らせ(脚注展開表示/Yin and Yang/ReadMore) »

2008/11/08

ReadMore:『続きを読む』をその場で読むSeaHorse/Greasemonkeyスクリプト

あちこちのブログをつまみ読みしているとき、「続きを読む」リンクが出てくるとページ遷移しちゃうのが煩わしいなぁ……と前から思っていたので、これをその場で表示するSeaHorseスクリプトを試作してみました。
SeaHorseなので当然ながらSleipnir専用です。
それ程複雑なことはやっていないと思いますので、Greasemonkeyに慣れた方なら移植も容易かと……ちなみに私は慣れてないのでできません(w。

【2008/11/08】Greasemonkeyとしても動作するようにしてみました(ver.0.02~)。
【2008/11/16】LDRizeにショートカットキーを追加出来るようにしてみました(ver.0.03~)。
■SeaHorse/Greasemonkeyスクリプト
ReadMore:『続きを読む』をその場で表示
ReadMore Extension for LDRize :LDRizeにキーバインド追加
SeaHorseの使い方については、例えばこちらとかこちらを参照。
Greasemonkeyについては、例えばこちらを参照。
■動作画面

Readmoresample1

適当な『続きを読む』リンクにマウスカーソルを重ねると……

Readmoresample2_2

のように、続きがその場で展開されます(LDRizeキー:[m])。
このとき、続き部分の前後には v[*n]/^[*n] のようなスイッチが表示され、
  1. スイッチ上でマウスホイール→続き部分の一番下/一番上に移動(LDRizeキー:[b]/[t])
  2. スイッチをクリック→続き部分を閉じる(LDRizeキー:[m]。開く/閉じるはトグル。)
という動作をサポートしています。
【2008/11/16】LDRizeキーはLDRizeとReadMore Extensionを使用した場合にのみ有効。
■対応サイトなど
ココログ、および、はてなダイアリーについては、自サイトを含むいくつかのサイトで動作を確認しました。
トラックバックやコメントまで表示されるのはうっとうしいと思いますが。
FC2ブログやライブドアブログなんかでもサイトによっては動作することもあるかもしれません。
■注意書き
  • 例によって、一切の保証はありません。ご使用は自己責任にて。
  • サイトによっては全く動作しなかったり、おかしな挙動を示すこともあります。悪しからずご了承願います。
以下、覚書など。
■独り言
ほんとうはAutoPagerizeのようにSITEINFOでサイト毎の設定を管理すればよいのでしょうが、面倒なのと初動を速くしたいこともあって、
  1. マウスオーバしたリンクオブジェクトのhrefに'more'(という文字列を含む)アンカー指定があるかどうかをチェック。
  2. リンク先ページを読込んで、その中に上記のアンカーが含まれるかどうかをチェック。
  3. アンカーがあれば、アンカー以降でかつ(DOMツリー上)同一階層にある要素を『続き』部分と見なして表示。
という単純な方法で実装しています。
なお、一部のブログでは、リンクのhrefにアンカー指定が無くてもリンク先ページ上には(続き表示用の)アンカーが存在する、というケースもあるみたいですので、1.の条件の代わりに、リンク文字列に適当な単語が含まれていればとりあえず 2. を試みる、ということをしています。
結果として、読込んだはいいけれど実際にはアンカーが含まれていなくて骨折り損、ということもままあります。

« 【JavaScript】IE7でリンクオブジェクトのhrefが参照出来なくなるケース有り | トップページ | スクリプトバージョンアップのお知らせ(脚注展開表示/Yin and Yang/ReadMore) »

ウェブログ・ココログ関連」カテゴリの記事

パソコン・インターネット」カテゴリの記事

おもいつき」カテゴリの記事

コメント

こんにちは。Sleipnirユーザーです。
脚注を表示といい、便利に使わせて頂いています。
http://pc11.2ch.net/test/read.cgi/win/1219455391/486
のGoogleにfaviconと番号を表示するスクリプトを併用した場合、
Google検索結果のページでfaviconと番号が二重に表示されてしまうようです。
そこで、
// @exclude        http://*google.*/search?*q=*
を追加することで回避してみました。
お尋ねしたいのですが、// @excludeは、
ReadMore Extension for LDRize 
のほうにも追加した方がベターなのでしょうか?
現在、ReadMoreに追加しただけで正常に動いていますが。
よろしければ教えてください。

プニ太郎 さん、どうもです。

ReadMore Extension for LDRize
の方は、ReadMore本体が動作していなければ動きませんので、特に@excludeに追加する必要はありません。

なお、件のスクリプトでアイコンと番号が二重に表示されてしまう件は、
ReadMore ver.0.03b
で対応しましたので、@excludeを追加しなくても誤動作しなくなるのではないかと思います。宜しければダウンロードしなおしてお試しください。
#内部でiframe要素を作っていたのが原因みたいだったので、これを外しました。

コメントを書く

(ウェブ上には掲載しません)

トラックバック

» 『続きを読む』をその場で読むReadMoreをLDRizeに対応 [風柳亭 - 別館:書庫のある庵 -]
ReadMoreをLDRizeに対応し、キー操作で『続きを読む』をその場で読むことが出来るようになりました。 [続きを読む]

« 【JavaScript】IE7でリンクオブジェクトのhrefが参照出来なくなるケース有り | トップページ | スクリプトバージョンアップのお知らせ(脚注展開表示/Yin and Yang/ReadMore) »

戻るリンク追加

カレンダー

2019年9月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30          

ココログカレンダーPlus

検索


    • Web全体 サイト内
    • 蔵書のISBNを入力して下さい
    • はじめる前
      初級者向け
      上級者向け
      ブログ紹介
      結果を表示

最近のトラックバック

コメントリストツリー化

無料ブログはココログ