現在見ているはてなユーザのアーカイブ検索を行うブックマークレット。
はてなダイアリーのトップの検索窓で検索すると、記事本体が表示される。これだと一覧では見えないし、記事全体が表示されるために読込みに時間もかかる。そこでアーカイブ検索したいのだが、アーカイブページに移動して検索するのも面倒。ということで、一発でアーカイブ検索できるブックマークレットを作ってみた。といっても、「文字列を選択して検索」なので使い勝手はいまいちかも。本文にない文字列を検索したい場合は、検索ボックスに文字列を入れ、それを選択してからアーカイブ検索を行ってください。
ダイアリー以外のはてなサービスでも検索可能だと思います。はてな以外のサイトでの動作は保証しません。
- はてなダイアリーのアーカイブ検索
- はてなダイアリーを見ながら画面内の文字列を選択してこのブックマークレットを実行すると、現在見ているユーザのダイアリー内のアーカイブ検索を行う。
javascript:d=document;w=window;function enc(s){return encodeURIComponent?encodeURIComponent(s):encodeURI(s);}if(d.selection){q=d.selection.createRange().text;}else if(d.getSelection){q=d.getSelection();}else if(w.getSelection){q=w.getSelection();}var startpos=location.href.indexOf('/',7);var endpos=location.href.indexOf('/',startpos+1);var username=location.href.substring(startpos+1, endpos);location.href='http://d.hatena.ne.jp/'+username+'/archive?word='+enc(q);
- おまけ
ダイアリーなどのHTML内にフォームとしてアーカイブ検索を埋め込みたい場合はこちら。
<form action="/tetsu23/archive" method="get"><input type="text" name="word" value=""><input type="submit" value="検索"></form>
サイドバーに埋め込みたい場合は、詳細デザイン設定の「ページのフッタ」にこんな感じでいいのかな。
<hatena template="hatena-module" name="calendar2"> <div class="hatena-module"> <div class="hatena-moduletitle">アーカイブ検索 </div> <div class="hatena-modulebody"> <ul> <li><form action="/tetsu23/archive" method="get"><input type="text" name="word" value=""><input type="submit" value="検索"></form></li> </ul> </div> </div>
←とりあえず入れてみております。