Hatena::Groupchronicle

記憶する部屋

 | 

2008-11-30Greasemonkey / Bookmarkletをはてブのリニューアルに対応させました

はてなブックマークリニューアルに伴い、使用できなくなっていたり不具合が出ていたこれらの Greasemonkey / Bookmarkletを対応させました

Greasemonkey
Bookmarklet

それ以外のものも随時、対応させていく予定ですのでもうしばらくお待ち下さい。



備忘録的に

IDコール先を見やすくするGreasemonkey

今回変更したポイントは大きく3点

1.はてなブックマークリニューアルに対応

これは文字通りなので特に説明なし。

2.ポップアップハイライトスタイルはてなブックマークに合わせる

新しいはてなブックマークに、お気に入りに入れてるユーザーブックマークした場合、似たようにポップアップハイライトを行う機能が追加されたので、

この Greasemonkey もそのスタイル踏襲しました*1

3.Reply機能の追加

アイデアとしてはこちら

僕が「あったら良いな」と思うはてなブックマークの機能のまとめ :ekken

idコールしたコメントは、コールした側からは分かりやすいけど、コールされた側からは分かりにくい。idコールメール通知設定にしているユーザーはともかくも、そうではないユーザー当事者以外には分かりにくいので、ブックマークコメント一覧に「コールされたことが分かりやすくなる何か」があると良いなぁ。

僕が「あったら良いな」と思うはてなブックマークの機能のまとめ :ekken

というのを元に追加してみました。

Reply機能だけなら、こちらの Greasemonkey もありますね。

昇順・降順に入れ替えるGreasemonkey

リニューアル後はページ構造が変わり、コメントの有無に関わらず span.comment が生成されるのですが、その代わりリスト class属性が変わったのでそれを利用することに。

ただ、パターンが多く

  • ul#bookmarked_user li
    • (無し)
    • odd
    • odd nocomment
    • odd nocomment self
    • nocomment
    • nocomment self
    • odd self
    • self

という。

で、CSS でいうところの li[class*="nocomment"] みたいなことを XPath で出来ないかなーと思ったら

descendant::ul[@id="bookmarked_user"]/li[contains(@class, "nocomment")]

こうやれば良いらしい。というメモ

まぁFirefox3以上だけを対象にするなら、素直に getElementsByClassName を使えばいい話なんですが。


補足

このエントリー2008年11月30日に書いてて、「最後色々と修正して翌日に更新するかー」と思ってたら日付を12月1日に直すのを忘れてました。

*1:以前はハイライトは緑でポップアップ角丸の吹き出しでした

 |