2007 . 12 . 06

K'confが選ぶ30個のブックマークレット

WEB上で公開されているブックマークレットの中から個人的にコレは!と思うものをいくつかピックアップして紹介します。
実用的で役立つものから、必ずしもそうでないものまで、ノンジャンル30個のブックマークレットを集めてみました。

ブックマークレットとはJavaScriptで記述された小さなプログラムで、ブラウザのブックマークとして登録して、それをクリックして使用します。
番号のリンクをブックマークして、目的のページでクリックして使用してください。(※注)



№1. HTTP headers
HTTPリクエストとレスポンスヘッダを表示
同一ウィンドウにてweb-sniffer.netにジャンプし、そのページのHTTPリクエストとレスポンスヘッダを調べます
javascript:document.location.href = 'http://webtools.mozilla.org/web-sniffer/view.cgi?url=' + escape(document.location.href)
[ via:Jesse's Bookmarklets Site ]


№2. Referrer
アラート画面にリファラーを表示
javascript:a=(document.referrer.length>0)?document.referrer:'Referrer not available.';alert(a);
[ via:Functional Bookmarks ]


№3. Last Modified
最終更新日時をアラート画面に表示
javascript:function gett(w){try{var lm=new Date(w.document.lastModified);if(lm>maxd)maxd=lm;for(var i=0;F=w.frames[i];i++){gett(F);}}catch(e){}}var now=new Date();var maxd=new Date(document.lastModified);gett(window);if(maxd.getTime()==0||now.toUTCString()==maxd.toUTCString()){alert('Page is dynamically generated, cannot determine date.');}else{alert('Page was last modified '+maxd.toLocaleString());}
[ via:subSimple Bookmarklets ]


№4. View Cookies
そのページのクッキーを表示
javascript:if(document.cookie.length<1){alert('No cookie for this site.')}else{alert('Cookie for this site:\n\n'+document.cookie.replace(/; /g,'\n'))}
[ via:Opera Community ]


№5. Removes Cookies
そのページ上クッキーを削除
Firefoxでは、個別でのクッキー削除はオプションをいちいち開かないと行えないので、コレは結構便利。
javascript:(function(){C=document.cookie.split('; ');for(d='.'+location.host;d;d=(''+d).substr(1).match(/\..*$/))for(sl=0;sl<2;++sl)for(p='/'+location.pathname;p;p=p.substring(0,p.lastIndexOf('/')))for(i in C)if(c=C[i]){document.cookie=c+'; domain='+d.slice(sl)+'; path='+p.slice(1)+'/'+'; expires='+new Date((new Date).getTime()-1e11).toGMTString()}})()
[ via:Jesse's Bookmarklets Site ]


№6. Zap Plugins
Java,フラッシュ,フレーム,BGMを無効にする
いろいろと、うっとうしいサイト用に
javascript:(function(){function R(w){try{var d=w.document,j,i,t,T,N,b,r=1,C;for(j=0;t=[&quot;object&quot;,&quot;embed&quot;,&quot;applet&quot;,&quot;iframe&quot;][j];++j){T=d.getElementsByTagName(t);for(i=T.length-1;(i+1)&&(N=T[i]);--i)if(j!=3||!R((C=N.contentWindow)?C:N.contentDocument.defaultView)){b=d.createElement(&quot;div&quot;);b.style.width=N.width; b.style.height=N.height;b.innerHTML=&quot;<del>&quot;+(j==3?&quot;third-party &quot;+t:t)+&quot;</del>&quot;;N.parentNode.replaceChild(b,N);}}}catch(E){r=0}return r}R(self);var i,x;for(i=0;x=frames[i];++i)R(x)})()
[ via:Jesse's Bookmarklets Site ]


№7. counters
クリックした場所に番号入りのマーカーを付ける
テキスト中心の長いページなどで、目印を付けておきたいときに便利。ブックマークレット実行後、ページ上をクリックしたポイントに黄色の番号入りマーカーが挿入されていきます。
また、番号ではなく任意の文字を指定できる改良版も公開されています
javascript:void(C=0,(D=document).onclick=function(e){if(!e){e=event}cdiv=D.createElement('div');(cs=cdiv.style).position='absolute';cs.left=(e.pageX||e.clientX+D.documentElement.scrollLeft)-7+'px';cs.top=(e.pageY||e.clientY+D.documentElement.scrollTop)-7+'px';cs.border='1px outset';cs.backgroundColor='yellow';cs.color='black';cs.padding='0px 2px';cs.fontSize='11px';cdiv.appendChild(D.createTextNode(++C));D.getElementsByTagName('body')[0].appendChild(cdiv)})
[ via:milov.nl ]


№8. Hides visited links
訪問済みのリンクを消す
訪問済みページのリンク色を色分けしていないようなサイト(このサイトみたいに)で、不便なときに
javascript:(function(){var newSS, styles=':visited {display: none}'; if(document.createStyleSheet) { document.createStyleSheet(&quot;javascript:'&quot;+styles+&quot;'&quot;); } else { newSS=document.createElement('link'); newSS.rel='stylesheet'; newSS.href='data:text/css,'+escape(styles); document.getElementsByTagName(&quot;head&quot;)[0].appendChild(newSS); } })();
[ via:Jesse's Bookmarklets Site ]


№9. Number of Links
リンクの数をアラート画面に表示
javascript:if(frames.length<1){alert('This page has ' + document.links.length + ' links.')}else{alert('The page has frames! Use version of bookmarklet for frames. (bookmarklets.com)')}
[ via:Bookmarklets Home Page ]


№10. List All Links (URL)
リンクされているURLをリストアップ
javascript:WN7z=open('','Z6','width=400,height=200,scrollbars,resizable,menubar');DL5e=document.links;with(WN7z.document){write('<base target=_blank>');for(lKi=0;lKi<DL5e.length;lKi++){write(DL5e[lKi].toString().link(DL5e[lKi])+'<br><br>')};void(close())}
[ via:Bookmarklets Home Page ]


№11. List All Links (Title)
リンクされているURLをタイトルでリストアップ
javascript:(function(){if(frames.length>1)alert('Sorry, frames detected.');else{wnd=open('','lnkswnd','width=250,height=500,top=0,left=0,scrollbars,resizable');lnks=document.links;with(wnd.document){writeln('<html><scr'+'ipt>function opnUrl(url){opener.location.href=unescape(url);close();}</scr'+'ipt>');for(var i=0;i<lnks.length;i++){writeln('<li><a href=%22javascript:opnUrl(\''+escape(lnks[i].href)+'\')%22>'+lnks[i].innerHTML+'</a></li>');}writeln('</html>');close();}}})()
[ via:subSimple Bookmarklets ]


№12. Show Images
ページにある画像の詳細をリストアップ
画像とそのサイズやパスがリスト表示されます
javascript:if(frames.length>1)alert('This bookmarklet does not work \nwith frameset structure.');else{outText='';for (i=0;i<document.images.length;i++){if (outText.indexOf(document.images[i].src)==-1) {outText+='<tr><td><img src='+document.images[i].src+'></td><td>'+document.images[i].width+'x'+document.images[i].height+'</td><td>'+document.images[i].fileSize+'%C2%A0bytes</td><td>'+document.images[i].src+'</td></tr>';}}if (outText!='') {imgWindow=window.open('','imgWin','width='+screen.width+',height='+screen.height-200+',menu=yes,toolbar=yes,scrollbars=yes,resizable=yes');imgWindow.document.write('<table border=1 cellpadding=10><tr><th>Image</th><th>Format</th><th>Size</th><th>Url</th></tr>'+outText+'</table>');imgWindow.document.close();}else {alert('No image !..');}}
[ via:VBBreizh : Softs and development tools ]


№13. Search Links
指定した文字列が含まれるリンクをリストアップ
例えば、「.mp3」などとすれば、そのページの中でリンクされているMP3ファイルだけをリスト表示することが出来ます
リスト化されたページに対して№16№17のブックマークレットを使えば、まとめて開く(あるいはDL)ということが可能になります
javascript:(function(){var x,n,nD,z,i; function htmlEscape(s){s=s.replace(/&/g,'&amp;');s=s.replace(/>/g,'&gt;');s=s.replace(/</g,'&lt;');return s;} function attrQuoteEscape(s){s=s.replace(/&/g,'&amp;'); s=s.replace(/"/g, '&quot;');return s;} x=prompt("show links with this word/phrase in link text or target url (leave blank to list all links):", ""); n=0; if(x!=null) { x=x.toLowerCase(); nD = window.open().document; nD.writeln('<html><head><title>Links containing "'+htmlEscape(x)+'"</title><base target="_blank"></head><body>'); nD.writeln('Links on <a href="'+attrQuoteEscape(location.href)+'">'+htmlEscape(location.href)+'</a><br> with link text or target url containing &quot;' + htmlEscape(x) + '&quot;<br><hr>'); z = document.links; for (i = 0; i < z.length; ++i) { if ((z[i].innerHTML && z[i].innerHTML.toLowerCase().indexOf(x) != -1) || z[i].href.toLowerCase().indexOf(x) != -1 ) { nD.writeln(++n + '. <a href="' + attrQuoteEscape(z[i].href) + '">' + (z[i].innerHTML || htmlEscape(z[i].href)) + '</a><br>'); } } nD.writeln('<hr></body></html>'); nD.close(); } })();
[ via:Jesse's Bookmarklets Site ]


№14. サムネイル画像を表示
ページ上の画像のテキストリンクをサムネイル画像として表示
掲示板サイトのように画像のURLだけが貼られているような場合に、イメージタグを追加、リサイズしてサムネイル画像を表示します。
javascript:b=document.body;b.innerHTML=b.innerHTML.replace(/(<[^>]+>[^<]*?)h?(ttp:\/\/[a-zA-Z0-9.$,;:&=?!*~@#_()%/'+-]+?\.(jp(e|)g|gif|png))/gi,'$1<img src=%22h$2%22 width=100>');void(0);
[ via:1行javascriptプログラミング ]


№15. Split Frames into Windows
フレームをそれぞれ別ウィンドウで開く
javascript:if(frames.length>0){for (i=0;i<frames.length;i++){fR=frames[i];void(window.open(fR.document.location.href,fR.name+i,'width='+fR.innerWidth+',height='+fR.innerHeight+',scrollbars,menubar,resizable,status'))}}else{alert('No frames!')}
[ via:Bookmarklets Home Page ]


№16. Opens all links
すべてのリンクを開く
ブックマークレットを実行すると、まず、リンク数を示すダイアログが表示されるので、OKをクリックするとそのページでリンクしているものすべてを開きます
javascript:(function(){var n_to_open,dl,dll,i; function linkIsSafe(u) { if (u.substr(0,7)=='mailto:') return false; if (u.substr(0,11)=='javascript:') return false; return true; } n_to_open = 0; dl = document.links; dll = dl.length; for(i = 0; i < dll; ++i) { if (linkIsSafe(dl[i].href)) ++n_to_open; } if (!n_to_open) alert ('no links'); else { if (confirm('Open ' + n_to_open + ' links in new windows?')) for (i = 0; i < dll; ++i) if (linkIsSafe(dl[i].href)) window.open(dl[i].href); } })();
[ via:Jesse's Bookmarklets Site ]


№17. Open Selected Links
選択範囲にあるリンクをすべて開く
こちらは選択範囲の中にあるリンクのみを開きます
javascript:(function(){var n_to_open,dl,dll,i; function linkIsSafe(u) { if (u.substr(0,7)=='mailto:') return false; if (u.substr(0,11)=='javascript:') return false; return true; } n_to_open = 0; dl = document.links; dll = dl.length; if (window.getSelection && window.getSelection().containsNode) { /* mozilla */ for(i=0; i<dll; ++i) { if (window.getSelection().containsNode(dl[i], true) && linkIsSafe(dl[i].href)) ++n_to_open; } if (n_to_open && confirm('Open ' + n_to_open + ' selected links in new windows?')) { for(i=0; i<dll; ++i) if (window.getSelection().containsNode(dl[i], true) && linkIsSafe(dl[i].href)) window.open(dl[i].href); } } /* /mozilla */ if (!n_to_open) { /*ie, or mozilla with no links selected: this section matches open_all_links, except for the alert text */ for(i = 0; i < dll; ++i) { if (linkIsSafe(dl[i].href)) ++n_to_open; } if (!n_to_open) alert ('no links'); else { if (confirm('No links selected.  Open ' + n_to_open + ' links in new windows?')) for (i = 0; i < dll; ++i) if (linkIsSafe(dl[i].href)) window.open(dl[i].href); } } })();
[ via:Jesse's Bookmarklets Site ]


№18. Open Google Cache
Google の検索結果一覧画面からキャッシュのリンクだけを開く
Googleで探し物をしていると、引用ではなかなか判断できず、とりあえず片っ端から開いていって関係ないサイトはどんどん閉じていくような使い方をするときに便利です
本サイトではなくキャッシュを開くようになっているのでリンク切れのサイトにも対応できます
javascript:(function() {var max=10; var z=document.links; var t='/search?q=cache:'; for(i = 0; i < z.length && 0 < max; ++i) { if (z[i].innerHTML && z[i].href.indexOf(t) != -1) { void(window.open(z[i].href)); max--;} }}) ();
[ via:Landscape - エンジニアのメモ ]


№19. Highlights RegExp
正規表現で指定した文字列をハイライト表示
正規表現が使えるってとこがミソです
javascript:(function(){var count=0, text, regexp;text=prompt("Search regexp:", "");if(text==null || text.length==0)return;try{regexp=new RegExp("(" + text +")", "i");}catch(er){alert("Unable to create regular expression using text '"+text+"'.\n\n"+er);return;}function searchWithinNode(node, re){var pos, skip, spannode, middlebit, endbit, middleclone;skip=0;if( node.nodeType==3 ){pos=node.data.search(re);if(pos>=0){spannode=document.createElement("SPAN");spannode.style.backgroundColor="yellow";middlebit=node.splitText(pos);endbit=middlebit.splitText(RegExp.$1.length);middleclone=middlebit.cloneNode(true);spannode.appendChild(middleclone);middlebit.parentNode.replaceChild(spannode,middlebit);++count;skip=1;}}else if( node.nodeType==1 && node.childNodes && node.tagName.toUpperCase()!="SCRIPT" && node.tagName.toUpperCase!="STYLE"){for (var child=0; child < node.childNodes.length; ++child){child=child+searchWithinNode(node.childNodes[child], re);}}return skip;}window.status="Searching for "+regexp+"...";searchWithinNode(document.body, regexp);window.status="Found "+count+" match"+(count==1?"":"es")+" for "+regexp+".";})();
[ via:Opera Browser Wiki :: Opera Bookmarklets Page ]


№20. Colors Links
リンクを色表示します
外部リンクは赤、内部リンクは青、ページ内リンクはオレンジに色分けします
意図的にリンクを全く色分けしてないようなサイトに使えます
javascript:(function(){var i,x; for (i=0;x=document.links[i];++i)x.style.color=["blue","red","orange"][sim(x,location)]; function sim(a,b) { if (a.hostname!=b.hostname) return 0; if (fixPath(a.pathname)!=fixPath(b.pathname) || a.search!=b.search) return 1; return 2; } function fixPath(p){ p = (p.charAt(0)=="/" ? "" : "/") + p;/*many browsers*/ p=p.split("?")[0];/*opera*/ return p; } })()
[ via:Opera Browser Wiki :: Opera Bookmarklets Page ]


№21. Password generator
指定した文字列からパスワードを生成
パスワードフォームのあるページでブックマークレットを実行後、ダイアログで任意の文字列を入力すると、それをもとにパスワードを生成した後、フォームに入力します
javascript:function%20hex_md5%28s%29%7B%20return%20binl2hex%28core_md5%28str2binl%28s%29%2C%20s.length%20*%208%29%29%3B%7Dfunction%20core_md5%28x%2C%20len%29%7Bx%5Blen%20%3E%3E%205%5D%20%7C%3D%200x80%20%3C%3C%20%28%28len%29%20%25%2032%29%3Bx%5B%28%28%28len%20%2B%2064%29%20%3E%3E%3E%209%29%20%3C%3C%204%29%20%2B%2014%5D%20%3D%20len%3Bvar%20a%20%3D%20%201732584193%3Bvar%20b%20%3D%20%2D271733879%3Bvar%20c%20%3D%20%2D1732584194%3Bvar%20d%20%3D%20%20271733878%3Bfor%28var%20i%20%3D%200%3B%20i%20%3C%20x.length%3B%20i%20%2B%3D%2016%29%7Bvar%20olda%20%3D%20a%3Bvar%20oldb%20%3D%20b%3Bvar%20oldc%20%3D%20c%3Bvar%20oldd%20%3D%20d%3Ba%20%3D%20md5_ff%28a%2C%20b%2C%20c%2C%20d%2C%20x%5Bi%2B%200%5D%2C%207%20%2C%20%2D680876936%29%3Bd%20%3D%20md5_ff%28d%2C%20a%2C%20b%2C%20c%2C%20x%5Bi%2B%201%5D%2C%2012%2C%20%2D389564586%29%3Bc%20%3D%20md5_ff%28c%2C%20d%2C%20a%2C%20b%2C%20x%5Bi%2B%202%5D%2C%2017%2C%20%20606105819%29%3Bb%20%3D%20md5_ff%28b%2C%20c%2C%20d%2C%20a%2C%20x%5Bi%2B%203%5D%2C%2022%2C%20%2D1044525330%29%3Ba%20%3D%20md5_ff%28a%2C%20b%2C%20c%2C%20d%2C%20x%5Bi%2B%204%5D%2C%207%20%2C%20%2D176418897%29%3Bd%20%3D%20md5_ff%28d%2C%20a%2C%20b%2C%20c%2C%20x%5Bi%2B%205%5D%2C%2012%2C%20%201200080426%29%3Bc%20%3D%20md5_ff%28c%2C%20d%2C%20a%2C%20b%2C%20x%5Bi%2B%206%5D%2C%2017%2C%20%2D1473231341%29%3Bb%20%3D%20md5_ff%28b%2C%20c%2C%20d%2C%20a%2C%20x%5Bi%2B%207%5D%2C%2022%2C%20%2D45705983%29%3Ba%20%3D%20md5_ff%28a%2C%20b%2C%20c%2C%20d%2C%20x%5Bi%2B%208%5D%2C%207%20%2C%20%201770035416%29%3Bd%20%3D%20md5_ff%28d%2C%20a%2C%20b%2C%20c%2C%20x%5Bi%2B%209%5D%2C%2012%2C%20%2D1958414417%29%3Bc%20%3D%20md5_ff%28c%2C%20d%2C%20a%2C%20b%2C%20x%5Bi%2B10%5D%2C%2017%2C%20%2D42063%29%3Bb%20%3D%20md5_ff%28b%2C%20c%2C%20d%2C%20a%2C%20x%5Bi%2B11%5D%2C%2022%2C%20%2D1990404162%29%3Ba%20%3D%20md5_ff%28a%2C%20b%2C%20c%2C%20d%2C%20x%5Bi%2B12%5D%2C%207%20%2C%20%201804603682%29%3Bd%20%3D%20md5_ff%28d%2C%20a%2C%20b%2C%20c%2C%20x%5Bi%2B13%5D%2C%2012%2C%20%2D40341101%29%3Bc%20%3D%20md5_ff%28c%2C%20d%2C%20a%2C%20b%2C%20x%5Bi%2B14%5D%2C%2017%2C%20%2D1502002290%29%3Bb%20%3D%20md5_ff%28b%2C%20c%2C%20d%2C%20a%2C%20x%5Bi%2B15%5D%2C%2022%2C%20%201236535329%29%3Ba%20%3D%20md5_gg%28a%2C%20b%2C%20c%2C%20d%2C%20x%5Bi%2B%201%5D%2C%205%20%2C%20%2D165796510%29%3Bd%20%3D%20md5_gg%28d%2C%20a%2C%20b%2C%20c%2C%20x%5Bi%2B%206%5D%2C%209%20%2C%20%2D1069501632%29%3Bc%20%3D%20md5_gg%28c%2C%20d%2C%20a%2C%20b%2C%20x%5Bi%2B11%5D%2C%2014%2C%20%20643717713%29%3Bb%20%3D%20md5_gg%28b%2C%20c%2C%20d%2C%20a%2C%20x%5Bi%2B%200%5D%2C%2020%2C%20%2D373897302%29%3Ba%20%3D%20md5_gg%28a%2C%20b%2C%20c%2C%20d%2C%20x%5Bi%2B%205%5D%2C%205%20%2C%20%2D701558691%29%3Bd%20%3D%20md5_gg%28d%2C%20a%2C%20b%2C%20c%2C%20x%5Bi%2B10%5D%2C%209%20%2C%20%2038016083%29%3Bc%20%3D%20md5_gg%28c%2C%20d%2C%20a%2C%20b%2C%20x%5Bi%2B15%5D%2C%2014%2C%20%2D660478335%29%3Bb%20%3D%20md5_gg%28b%2C%20c%2C%20d%2C%20a%2C%20x%5Bi%2B%204%5D%2C%2020%2C%20%2D405537848%29%3Ba%20%3D%20md5_gg%28a%2C%20b%2C%20c%2C%20d%2C%20x%5Bi%2B%209%5D%2C%205%20%2C%20%20568446438%29%3Bd%20%3D%20md5_gg%28d%2C%20a%2C%20b%2C%20c%2C%20x%5Bi%2B14%5D%2C%209%20%2C%20%2D1019803690%29%3Bc%20%3D%20md5_gg%28c%2C%20d%2C%20a%2C%20b%2C%20x%5Bi%2B%203%5D%2C%2014%2C%20%2D187363961%29%3Bb%20%3D%20md5_gg%28b%2C%20c%2C%20d%2C%20a%2C%20x%5Bi%2B%208%5D%2C%2020%2C%20%201163531501%29%3Ba%20%3D%20md5_gg%28a%2C%20b%2C%20c%2C%20d%2C%20x%5Bi%2B13%5D%2C%205%20%2C%20%2D1444681467%29%3Bd%20%3D%20md5_gg%28d%2C%20a%2C%20b%2C%20c%2C%20x%5Bi%2B%202%5D%2C%209%20%2C%20%2D51403784%29%3Bc%20%3D%20md5_gg%28c%2C%20d%2C%20a%2C%20b%2C%20x%5Bi%2B%207%5D%2C%2014%2C%20%201735328473%29%3Bb%20%3D%20md5_gg%28b%2C%20c%2C%20d%2C%20a%2C%20x%5Bi%2B12%5D%2C%2020%2C%20%2D1926607734%29%3Ba%20%3D%20md5_hh%28a%2C%20b%2C%20c%2C%20d%2C%20x%5Bi%2B%205%5D%2C%204%20%2C%20%2D378558%29%3Bd%20%3D%20md5_hh%28d%2C%20a%2C%20b%2C%20c%2C%20x%5Bi%2B%208%5D%2C%2011%2C%20%2D2022574463%29%3Bc%20%3D%20md5_hh%28c%2C%20d%2C%20a%2C%20b%2C%20x%5Bi%2B11%5D%2C%2016%2C%20%201839030562%29%3Bb%20%3D%20md5_hh%28b%2C%20c%2C%20d%2C%20a%2C%20x%5Bi%2B14%5D%2C%2023%2C%20%2D35309556%29%3Ba%20%3D%20md5_hh%28a%2C%20b%2C%20c%2C%20d%2C%20x%5Bi%2B%201%5D%2C%204%20%2C%20%2D1530992060%29%3Bd%20%3D%20md5_hh%28d%2C%20a%2C%20b%2C%20c%2C%20x%5Bi%2B%204%5D%2C%2011%2C%20%201272893353%29%3Bc%20%3D%20md5_hh%28c%2C%20d%2C%20a%2C%20b%2C%20x%5Bi%2B%207%5D%2C%2016%2C%20%2D155497632%29%3Bb%20%3D%20md5_hh%28b%2C%20c%2C%20d%2C%20a%2C%20x%5Bi%2B10%5D%2C%2023%2C%20%2D1094730640%29%3Ba%20%3D%20md5_hh%28a%2C%20b%2C%20c%2C%20d%2C%20x%5Bi%2B13%5D%2C%204%20%2C%20%20681279174%29%3Bd%20%3D%20md5_hh%28d%2C%20a%2C%20b%2C%20c%2C%20x%5Bi%2B%200%5D%2C%2011%2C%20%2D358537222%29%3Bc%20%3D%20md5_hh%28c%2C%20d%2C%20a%2C%20b%2C%20x%5Bi%2B%203%5D%2C%2016%2C%20%2D722521979%29%3Bb%20%3D%20md5_hh%28b%2C%20c%2C%20d%2C%20a%2C%20x%5Bi%2B%206%5D%2C%2023%2C%20%2076029189%29%3Ba%20%3D%20md5_hh%28a%2C%20b%2C%20c%2C%20d%2C%20x%5Bi%2B%209%5D%2C%204%20%2C%20%2D640364487%29%3Bd%20%3D%20md5_hh%28d%2C%20a%2C%20b%2C%20c%2C%20x%5Bi%2B12%5D%2C%2011%2C%20%2D421815835%29%3Bc%20%3D%20md5_hh%28c%2C%20d%2C%20a%2C%20b%2C%20x%5Bi%2B15%5D%2C%2016%2C%20%20530742520%29%3Bb%20%3D%20md5_hh%28b%2C%20c%2C%20d%2C%20a%2C%20x%5Bi%2B%202%5D%2C%2023%2C%20%2D995338651%29%3Ba%20%3D%20md5_ii%28a%2C%20b%2C%20c%2C%20d%2C%20x%5Bi%2B%200%5D%2C%206%20%2C%20%2D198630844%29%3Bd%20%3D%20md5_ii%28d%2C%20a%2C%20b%2C%20c%2C%20x%5Bi%2B%207%5D%2C%2010%2C%20%201126891415%29%3Bc%20%3D%20md5_ii%28c%2C%20d%2C%20a%2C%20b%2C%20x%5Bi%2B14%5D%2C%2015%2C%20%2D1416354905%29%3Bb%20%3D%20md5_ii%28b%2C%20c%2C%20d%2C%20a%2C%20x%5Bi%2B%205%5D%2C%2021%2C%20%2D57434055%29%3Ba%20%3D%20md5_ii%28a%2C%20b%2C%20c%2C%20d%2C%20x%5Bi%2B12%5D%2C%206%20%2C%20%201700485571%29%3Bd%20%3D%20md5_ii%28d%2C%20a%2C%20b%2C%20c%2C%20x%5Bi%2B%203%5D%2C%2010%2C%20%2D1894986606%29%3Bc%20%3D%20md5_ii%28c%2C%20d%2C%20a%2C%20b%2C%20x%5Bi%2B10%5D%2C%2015%2C%20%2D1051523%29%3Bb%20%3D%20md5_ii%28b%2C%20c%2C%20d%2C%20a%2C%20x%5Bi%2B%201%5D%2C%2021%2C%20%2D2054922799%29%3Ba%20%3D%20md5_ii%28a%2C%20b%2C%20c%2C%20d%2C%20x%5Bi%2B%208%5D%2C%206%20%2C%20%201873313359%29%3Bd%20%3D%20md5_ii%28d%2C%20a%2C%20b%2C%20c%2C%20x%5Bi%2B15%5D%2C%2010%2C%20%2D30611744%29%3Bc%20%3D%20md5_ii%28c%2C%20d%2C%20a%2C%20b%2C%20x%5Bi%2B%206%5D%2C%2015%2C%20%2D1560198380%29%3Bb%20%3D%20md5_ii%28b%2C%20c%2C%20d%2C%20a%2C%20x%5Bi%2B13%5D%2C%2021%2C%20%201309151649%29%3Ba%20%3D%20md5_ii%28a%2C%20b%2C%20c%2C%20d%2C%20x%5Bi%2B%204%5D%2C%206%20%2C%20%2D145523070%29%3Bd%20%3D%20md5_ii%28d%2C%20a%2C%20b%2C%20c%2C%20x%5Bi%2B11%5D%2C%2010%2C%20%2D1120210379%29%3Bc%20%3D%20md5_ii%28c%2C%20d%2C%20a%2C%20b%2C%20x%5Bi%2B%202%5D%2C%2015%2C%20%20718787259%29%3Bb%20%3D%20md5_ii%28b%2C%20c%2C%20d%2C%20a%2C%20x%5Bi%2B%209%5D%2C%2021%2C%20%2D343485551%29%3Ba%20%3D%20safe_add%28a%2C%20olda%29%3Bb%20%3D%20safe_add%28b%2C%20oldb%29%3Bc%20%3D%20safe_add%28c%2C%20oldc%29%3Bd%20%3D%20safe_add%28d%2C%20oldd%29%3B%7Dreturn%20Array%28a%2C%20b%2C%20c%2C%20d%29%3B%7Dfunction%20md5_cmn%28q%2C%20a%2C%20b%2C%20x%2C%20s%2C%20t%29%7Breturn%20safe_add%28bit_rol%28safe_add%28safe_add%28a%2C%20q%29%2C%20safe_add%28x%2C%20t%29%29%2C%20s%29%2Cb%29%3B%7Dfunction%20md5_ff%28a%2C%20b%2C%20c%2C%20d%2C%20x%2C%20s%2C%20t%29%7Breturn%20md5_cmn%28%28b%20%26%20c%29%20%7C%20%28%28~b%29%20%26%20d%29%2C%20a%2C%20b%2C%20x%2C%20s%2C%20t%29%3B%7Dfunction%20md5_gg%28a%2C%20b%2C%20c%2C%20d%2C%20x%2C%20s%2C%20t%29%7Breturn%20md5_cmn%28%28b%20%26%20d%29%20%7C%20%28c%20%26%20%28~d%29%29%2C%20a%2C%20b%2C%20x%2C%20s%2C%20t%29%3B%7Dfunction%20md5_hh%28a%2C%20b%2C%20c%2C%20d%2C%20x%2C%20s%2C%20t%29%7Breturn%20md5_cmn%28b%20%5E%20c%20%5E%20d%2C%20a%2C%20b%2C%20x%2C%20s%2C%20t%29%3B%7Dfunction%20md5_ii%28a%2C%20b%2C%20c%2C%20d%2C%20x%2C%20s%2C%20t%29%7Breturn%20md5_cmn%28c%20%5E%20%28b%20%7C%20%28~d%29%29%2C%20a%2C%20b%2C%20x%2C%20s%2C%20t%29%3B%7Dfunction%20safe_add%28x%2C%20y%29%7Bvar%20lsw%20%3D%20%28x%20%26%200xFFFF%29%20%2B%20%28y%20%26%200xFFFF%29%3Bvar%20msw%20%3D%20%28x%20%3E%3E%2016%29%20%2B%20%28y%20%3E%3E%2016%29%20%2B%20%28lsw%20%3E%3E%2016%29%3Breturn%20%28msw%20%3C%3C%2016%29%20%7C%20%28lsw%20%26%200xFFFF%29%3B%7Dfunction%20bit_rol%28num%2C%20cnt%29%7Breturn%20%28num%20%3C%3C%20cnt%29%20%7C%20%28num%20%3E%3E%3E%20%2832%20%2D%20cnt%29%29%3B%7Dfunction%20str2binl%28str%29%7Bvar%20bin%20%3D%20Array%28%29%3Bvar%20mask%20%3D%20%281%20%3C%3C%208%29%20%2D%201%3Bfor%28var%20i%20%3D%200%3B%20i%20%3C%20str.length%20*%208%3B%20i%20%2B%3D%208%29bin%5Bi%3E%3E5%5D%20%7C%3D%20%28str.charCodeAt%28i%20%2F%208%29%20%26%20mask%29%20%3C%3C%20%28i%2532%29%3Breturn%20bin%3B%7Dfunction%20binl2hex%28binarray%29%7Bvar%20hex_tab%20%3D%20%220123456789abcdef%22%3Bvar%20str%20%3D%20%22%22%3Bfor%28var%20i%20%3D%200%3B%20i%20%3C%20binarray.length%20*%204%3B%20i%2B%2B%29%7Bstr%20%2B%3D%20hex_tab.charAt%28%28binarray%5Bi%3E%3E2%5D%20%3E%3E%20%28%28i%254%29*8%2B4%29%29%20%26%200xF%29%20%2B%20hex_tab.charAt%28%28binarray%5Bi%3E%3E2%5D%20%3E%3E%20%28%28i%254%29*8%29%29%20%26%200xF%29%3B%7Dreturn%20str%3B%7Dfunction%20doIt%28%29%7Bvar%20master%3Dwindow.prompt%28%27Enter%20your%20master%20password%27%29%3Bif%20%28master%20!%3D%20%27%27%20%26%26%20master%20!%3D%20null%29%20%7Bre%20%3D%20new%20RegExp%28%22https*%3A%2F%2F%28%5B%5E%2F%5D%2B%29%22%29%3Bhost%20%3D%20document.location.href.match%28re%29%5B1%5D%3Bvar%20i%3D0%2C%20j%3D0%2C%20p%3Dhex_md5%28master%2B%27%3A%27%2Bhost%29.substr%280%2C8%29%2C%20F%3Ddocument.forms%3Bfor%28i%3D0%3Bi%3CF.length%3Bi%2B%2B%29%7BE%3DF%5Bi%5D.elements%3Bfor%28j%3D0%3Bj%3CE.length%3Bj%2B%2B%29%7BD%3DE%5Bj%5D%3Bif%28D.type%3D%3D%27password%27%29%7BD.value%3Dp%3BD.focus()%3B%7Dif%28D.type%3D%3D%27text%27%29%7Bif%28D.name.toUpperCase%28%29.indexOf%28%27PASSWORD%27%29!%3D%2D1%7C%7CD.name.toUpperCase%28%29.indexOf%28%27PASSWD%27%29!%3D%2D1%29%7BD.value%3Dp%3BD.focus()%3B%7D%7D%7D%7D%7D%7DdoIt%28%29%3Bvoid%28null%29%3B
[ via:Nic's tricks ]


№22. AutoFill Anonymous
コメントやメールフォームなどの入力ボックスに「anonymous」(匿名)と自動入力
こちらのテストページ実際に試すことができます
下のソース赤字部分を書き換えれば「anonymous」、「example.com」以外にもできます
javascript:function ROIoiW(){var i=0,j,A='anonymous',D,E,F=document.forms;while(i<F.length){E=F[i].elements;for(j=0;j<E.length;j++){D=E[j];if(D.type=='text'){D.value=(D.name.toUpperCase().indexOf('MAIL')!=-1)?A+'@example.com':A}}i++}}ROIoiW();void(null)
[ via:Bookmarklets Home Page ]


№23. Auto Fill Comment Form
コメントフォームの名前、メールアドレス、サイトURLを自動入力
こちらは主にブログのコメント用です
こちらも同様に赤字部分が入力される文字にあたります
上のも含め、こちらのブックマークレットはどのコメントフォームにも動作するというものでありませんのでご注意を
javascript:function ROIoiW(){var i=0,j,D,E,F=document.forms;while(i<F.length){E=F[i].elements;for(j=0;j<E.length;j++){D=E[j];if(D.type=='text'){if(D.name.toLowerCase().indexOf('url')!=-1){D.value='http://yourblogurl.org/'}if(D.name.toLowerCase().indexOf('email')!=-1){D.value='you@yourblogurl.org'}if(D.name.toLowerCase().indexOf('name')!=-1 || D.name.toLowerCase().indexOf('author')!=-1 ){D.value='Your Name'}}}i++}}ROIoiW();void(null)
[ via:boncey.org ]


№24. PlayTagger
MP3のリンクにプレビューボタンを追加
del.icio.usPlay TaggerボタンをMP3のリンクに挿入します
del.icio.usのplaytagger.jsを拝借して、MP3プレーヤーもそちらに実装されているプレーヤーを使うので、MP3をローカルアプリで再生させる必要がありません
上の№13と併用して使うと実用的ではないでしょうか
(また、以前紹介したGoogleハックのお供に使用するという手も)
javascript:(function(){if(window.Delicious&&(Delicious.Mp3||window.Mp3))return;var d=document,s=d.createElement('script'),wo=window.onload,go=function(){Delicious.Mp3.go();window.onload=wo||null};s.src='http://images.del.icio.us/static/js/playtagger.js';if(null===s.onreadystatechange)s.onreadystatechange=function(){if(s.readyState=='complete')go()};else s.onload=go;d.body.appendChild(s)})();
[ via:mrclay.orgy ]


№25. Scroll Page (slow)
ページを自動でスクロール
下のソース赤字部分でスピードを変更できます
javascript:var wN2scRl;Sa5gNA9k=new Function('clearTimeout(wN2scRl)');document.onkeydown=Sa5gNA9k;Sa5gNA9k();void(wN2scRl=setInterval('if(pageYOffset<document.height-innerHeight){window.scrollBy(0,1)}else{Sa5gNA9k()}',50))
[ via:Bookmarklets Home Page ]


№26. Am I Drunk Yet?
ページがぼやける
以下3つは、ブックマークレットとしてよりも、JavaScriptとしてあるページに組み込んだりするような使い方が正解かもしれません
(自分で使っても意味ないし:-)
javascript:void(document.body.style.filter='Blur(Add=\'0\',Direction=\'60\',Strength=\'4\')');
[ via:subSimple Bookmarklets ]


№27. !Shake
ページが揺れる
javascript:void(setInterval('scrollBy(0,-4+Math.random()*8)',30))
[ via:milov.nl ]


№28. Make Google Go Crazy
画像がぐるぐる踊る
Googleイメージ検索のように画像が並んであるページで実行すると効果的です
javascript:R=0; x1=.1; y1=.05; x2=.25; y2=.24; x3=1.6; y3=.24; x4=300; y4=200; x5=300; y5=200; DI=document.images; DIL=DI.length; function A(){for(i=0; i-DIL; i++){DIS=DI[ i ].style; DIS.position='absolute'; DIS.left=Math.sin(R*x1+i*x2+x3)*x4+x5; DIS.top=Math.cos(R*y1+i*y2+y3)*y4+y5}R++}setInterval('A()',5); void(0);
[ via:Make Google Go Crazy ]


№29. Click2Zap
ページ上でクリックした部分の要素を消す。
ブックマークレット実行後、カーソル下にある部分の要素がハイライトされ、クリックするとその部分が消えます。右上のメニューより、やり直しや有効/無効が切り替え可能です。
(IE6ではメニューが表示されませんでした)
javascript:(function(){var i=0,l,d=document,b=d.body,w=window;w.cZ=1;w.cZa=[];while(l=b.getElementsByTagName('*').item(i++)){l.onmouseover=function(e){if(!e)var e=w.event;e.cancelBubble=true;if(e.stopPropagation)e.stopPropagation();if(w.cZ){this.style.background='yellow'}};l.onmouseout=function(e){if(!e)var e=w.event;e.cancelBubble=true;if(e.stopPropagation)e.stopPropagation();if(w.cZ){this.style.background=''}};l.onclick=function(e){if(!e)var e=w.event;e.cancelBubble=true;if(e.stopPropagation)e.stopPropagation();if(!w.cZ){return true}this.style.background='';var h=d.createTextNode('');w.cZa.push(this,this.parentNode,h);this.parentNode.replaceChild(h,this);return false}}var c=d.createElement('table');c.innerHTML='click2zap: <'+'u id=cZp>print<'+'/u> | <'+'u id=cZt>disable<'+'/u> | <'+'u id=cZu>undo<'+'/u>';c.style.background='red';c.style.color='#fff';c.style.position='fixed';c.style.top='0';c.style.right='0';b.insertBefore(c,b.firstChild);c.onclick=function(e){if(!e)var e=w.event;e.cancelBubble=true;if(e.stopPropagation)e.stopPropagation()};d.getElementById('cZp').onclick=function(e){b.removeChild(c);w.print()};d.getElementById('cZt').onclick=function(e){w.cZ=w.cZ?0:1;this.innerHTML=w.cZ?'disable':'enable'};d.getElementById('cZu').onclick=function(e){if(!w.cZa.length)return;var h=w.cZa.pop(),p=w.cZa.pop(),r=w.cZa.pop();p.replaceChild(r,h)}})();
[ via:mrclay.org ]


№30. Favelet Suite
さまざまなブックマークレットをまとめた複合ブックマークレット
究極のブックマークレット。
Web Developer系のツールをてんこ盛りにしたスクリプトで、ここまで行くと単体アプリといってもいいような感じです
  • Color List
  • Document Tree Chart*
  • HTML Attribute Viewer
  • HTTP Header Viewer
  • Hidden Field Modifier
  • Javascript Object Tree*
  • MODIv2
  • Mouseover DOM Inspector
  • Object Dimensions
  • Page Info
  • Remove Children
  • Resize Fonts
  • Ruler**
  • Show Source
  • Style Sheet Tweak*
  • Style Sheet Viewer*
このブックマークレットは外部からsuite.jsというスクリプトを読み込んで動作するため、オフラインでは動作しません。
‼ こういった外部から別のスクリプトを呼び出す構造のブックマークレットは、そのスクリプトが危険なものではないか、注意して使用したいところです
javascript:s=document.body.appendChild(document.createElement('script'));s.id='fs';s.language='javascript';void(s.src='http://slayeroffice.com/tools/suite/suite.js');
[ via:slayeroffice ]


さて、今回紹介した以外にも、WEB上ではたくさんのブックマークレットが公開されており、より実用度の高いものも少なくありません。 しかし、実用度の高いものほど使用頻度も高くなる訳で、こういったものはもはやブックマークレットとして使うよりプラグインやエクステンションといった形で、 ブラウザに組み込んでしまう方が正直スマートといえます。
そういう意味では、今回紹介したものは、それほど頻繁に使用するものではないけどあれば便利、というものを中心に選んでみました。

あなたのブックマークに、ブックマークレット用のフォルダを追加して、これらのブックマークレットをまとめておけば、いざというときに何かと役に立つかもしれません。

[ご注意]

すべてのブックマークレットはFirefoxとIE以外のブラウザでは、動作テストをしていないので、動作するかは不明です。






#1
2007 . 12 . 08  06 : 25 AM
名無しさん

初コメです。いつも拝見しております。色々と役にたっております。これからもどうぞ宜しく。

#2
2007 . 12 . 08  01 : 15 PM
kenz0

こちらこそ、今度とも御ひいきに。