京ぽん用ブックマークレット置き場

Bookmarklets for AH-K3001V
ブックマークレットとは、”通常の「ブックマーク・お気に入り」のURL欄に、URLの代わりにJavaScriptを入れてWebブラウザを快適にする便利小物”です。っていう説明よりもはてなの解説の方が詳しいです。

ここに置いてあるのは、巷で「京ぽん」とか「京ポン」とか呼ばれている 京セラ AH-K3001V で使える Bookmarklet です。
↓で[アクティブリンク]とは[選択されているハイパーリンク]のつもりです。

自動更新(オートリロード)



自動リロードっていうか、つまり現在画面に表示されているページを指定秒数毎に読み込みます。


areload.html

<html>
<script>
document.write('<frameset>');
document.write('<frame name="areload" src="'+document.referrer+'">');
document.write('</frameset>');
setTimeout('R()',location.search.substring(1)*1000);
function R(){location.reload();}
</script>
</html>

↑をareload.htmlとしてローカル保存。ここで、ローカル保存とは、京ぽんのデータフォルダ(C:\data\)に保存する事です。つまり、↑の箱の中にあるHTMLを C:\data\areload.html というファイル名で保存する事です。
↓がブックマークレット

javascript:(function(){var T=prompt('R-time?','60');if(T&&!isNaN(T)){location='file://localhost/C:/data/areload.html?'+T;}})()

使い方
自動更新させたいページを表示してからこのブックマークレットを起動し、リロードの間隔(秒単位:初期値は60)を入力して [OK] を押します。


PC および W-ZERO3 では、自動更新(オートリロード)のブックマークレット - borbisの日記をお使いください。




areload.htmlをローカル保存する方法についての補足
京ぽん本体の内部にはデータフォルダ( C:\data\ )があって様々なデータをここに保存する事が出来ます。
(1)京ぽんのオペラで表示したWEBページは、データフォルダに保存できます。
(2)メールの添付ファイルは、データフォルダに保存できます。
(3)京ぽんに付属のユーティリティ(データ管理ツール)を使うと、パソコンのデータと京ぽんのデータフォルダのデータを相互にやり取り出来ます。
パソコンを利用できる環境のある人は、(2)(3)の方法でローカル保存すると良いと思います。
この場合、 areload.html ファイルは、メモ帳などのテキストエディタに↑のHTMLをコピペしてから、「名前をつけて保存」で areload.html の名前を付けて保存して作成します。
この後、(2)の「メールの添付ファイル」の方法の場合は、パソコンから京ぽんにメール送信します。


パソコンを利用できる環境が無くて京ぽん単体で(1)の方法で areload.html をローカル保存したい人は、後述のダウンロードページに行って下さい。
この場合は、必ず、ブラウザの設定を変更して JavaScriptOFF にしてから行って下さい。
JavaScriptON だとエラーになります。
さて、(1)の方法を”おさらい”して再確認しておきます。
京ぽんのオペラは、表示したWEBページを保存する機能が有ります。
つまり、 areload.html のページを表示した状態で、オペラのメニューを選んで「ページの保存」を実行すれば、 areload.html をローカル保存できます。
それでは、ダウンロードのページを紹介します。
しつこいようですが、
JavaScriptOFF にしてから行って下さい。
ダウンロードページに行ったら、 areload.html と表示されたリンクをクリックしてから「ページの保存」を実行してください。
こちらが areload.html のダウンロードページ



アクティブリンクのURLを編集して移動,SCOチェック,銀河表示


javascript:(function(){var a=prompt("Link",document.activeElement.href),b=prompt("(j)ump(c)heck(g)inga","jc");location.href=(b=="j"?a:(b=="c"?"http://so.7walker.net/?"+a:"http://yuki-lab.jp/f.cgi?f=3&u="+a))})()

使い方
十字キーでフォーカスを移動させてリンクの文字列を反転表示にしてから、このブックマークレットを起動します。
最初のメニューでリンクのURLを編集できます。編集の必要が無ければそのまま [OK]。
次のメニューで入力欄に jc が表示されます。ここで
 文字cを削除して j [OK] なら移動、
 文字jを削除して c [OK] なら 「 SCO(ソースチェッカーオンライン) 」 でHTMLソースの確認、
 そのまま jc [OK] なら「 銀河フィルタ 」 で表示。


PC版のOperaでも使えます IE,Firefox はNG。

アクティブリンクのURLを編集してi-modeプロキシで表示


javascript:(function(){var a=prompt("Link",document.activeElement);location="http://"+(confirm("[ajipon]or[UA2DoCoMo]")?"imode.csx.jp/~ajipon/proxy/proxy.cgi?"+escape("page:"+a):"tsukau.com/nph-docomo.cgi/000000A/http/"+a.replace(/http:\/\//,""))})()

使い方
十字キーでフォーカスを移動させてリンクの文字列を反転表示にしてから、このブックマークレットを起動します。
最初のメニューでリンクのURLを編集できます。編集の必要が無ければそのまま [OK]。
次のメニューで[OK]なら ajiponプロキシ、[キャンセル]なら UserAgent2DoCoMoプロキシで表示。


PC版のOperaでも使えます IE,Firefox はNG。

iFrameをリンク化してリストアップ


javascript:(function(){var d=document,f,g,n=0,s="",t=["frame","iframe"],u;for(u in t)for(f=d.getElementsByTagName(t[u]),g=0;g<f.length;g++,n++)s+="<a href=\""+f[g].src+"\">"+n+"."+t[u]+"="+f[g].name+"</a><BR>";n?d.write(s):alert("NoIFrame!")})()

使い方
フレームやインラインフレームの有るページで起動すると、頁中の(インライン)フレームを一覧表で表示します。
いずれかのエントリを選択して[OK]を押すと、その(インライン)フレームを個別に( 初期状態で )開きます。
京ぽんのスモールスクリーン・フルスクリーンモードだけで無く、ケータイモードもOK


ケータイモードでフレーム頁を扱えるとデータ通信量・通信時間を削減出来ます。
PC版のIE,Firefox,OperaもOK。

Frameをリンク化してリストアップ


javascript:(function(){if(top.length<1){alert("NoFrame!")}else{var i,s=""; for(i=0;i<top.length;i++){s+="<a href="+frames[i].location.href+">"+i+"."+frames[i].document.title+"</a><BR>";}; document.write (s);}})();

使い方
フレームやインラインフレームの有るページで起動すると、頁中の(インライン)フレームを一覧表で表示します。
いずれかのエントリを選択して[OK]を押すと、その(インライン)フレームを個別に( 現状の状態で )開きます。
京ぽんのスモールスクリーン・フルスクリーンモードで使えます、ケータイモードでは不可


PC版のIE,Firefox,OperaもOK。

MapionBBで表示←(アクティブリンク/表示中のページ)のURL



URLの一部として組み込まれている経度・緯度の数値を抽出してMapionBB地図で表示。
iタウンページ等の地図で不満を感じた時に便利です。

javascript:X=unescape((confirm("Lnk"))?document.activeElement:location).replace(/\&coco[^&]+/,"").match(/(\d+.){2}\d+\.\d{1,3}/g),E=1,N=0;if(X[0].charAt(0)==1)E=N++;location="http://www.mapion.co.jp/c/f?grp=MapionBB&uc=1&size=350,350&el="+X[E]+"&nl="+X[N]

「アクティブリンクのURL」の使い方
十字キーでフォーカスを移動させ、URLに経緯度の数値の含まれているリンクを選択状態にしてブックマークレットを呼び出し、〔Lnk?〕と聞かれたら〔OK〕ボタンを押します。
注1:通常の地図でリンクに経緯度の含まれているのは縮尺変更のリンクとか地図を携帯に送るリンクなどです。


「表示中のページのURL」の使い方
URLに経緯度の数値が含まれている地図を表示したら、ブックマークレットを呼び出し、〔Lnk?〕と聞かれたら〔キャンセル〕ボタンを押します。


補足説明
PC版のOperaでも使えます IE,Firefox は表示中のページのみOK。
注2:PC版のOperaで「リンクを選択状態にする」とは、文字列のコピーを行う際にマウスでドラッグするのと同じ要領でリンクの文字列を反転表示にする事です。

対応している元の地図は、Yahoo! BIGLOBE Nifty DION OCN MapFan Mapion iタウンページ ぐるなび Livedoor Goo MSN など多数。


経緯度の形式は、(DDは2桁の数字、FF,BB,sssは1桁以上の数字)


   経度:1DD.FF.BB.sss あるいは 1DD/FF/BB.sss
   緯度: DD.FF.BB.sss あるいは DD/FF/BB.sss

MapionPDAで表示←(アクティブリンク/表示中のページ)のURL



URLの一部として組み込まれている経度・緯度の数値を抽出してMapion PDA地図で表示。
iタウンページ等の地図で不満を感じた時に便利です。

javascript:X=unescape((confirm("Link"))?document.activeElement:location).replace(/\&coco=[^&]+/,"").match(/(\d+.){2}\d+\.\d{1,3}/g),E=1,N=0;if(X[0].charAt(0)==1)E=N++;location="http://www.mapion.co.jp/c/f?grp=pda&uc=1&size=350,350&el="+X[E]+"&nl="+X[N]

使い方
MapionBBの場合と同じです。


補足説明
MapionBBの場合と同じです。

Mapion地図サイズ変更


javascript:(function(){var x=prompt("size(x):",570), y=prompt("size(y):",480); location=unescape(location).replace(/&size=\d+,\d+/ig,"")+"&size="+x+","+y;})()

マピオン地図の size(x): 横サイズ, size(y): 縦サイズ を変更します。


使い方
マピオン地図が表示されている状態で起動します。


PDA版、標準版、MapionBB版のいずれでもOK!
ただし、MapionBB版のときに 500,500 のサイズを指定するとMapionBBのデフォルトのサイズに変更されます。



リファラを消して移動

このブックマークレットは、かつて、某巨大掲示板京ぽんJavaScriptスレに投稿したものの改良版です。
かつてスレに投稿した時にはレスが付かなかったので、こちらは、ひっそりと自分だけで使っていたものですが、

ケータイでブックマークレットを使うのは危険ですよ

もしもし、matsuuですが... - ブックマークレットでリファラーが漏れる

と言う発言を目撃したので、初代の京ぽんもリファラの問題は解決済みですよっと云う訳でこちらに掲載することにしました。



このブックマークレットは、アクティブリンクのURL、もしくは現在表示中のページのURLを編集して移動(ジャンプ)します。
この際に飛び先のページに元のページのリファラを渡す事無く移動します。


移動先のサイトは、次の中から選択できます。

  • URLのページに直接移動
  • 銀河フィルタで表示
  • 通勤ブラウザで表示
  • i-mode(ajipon proxy)で表示
  • i-mode(UserAgent2DoCoMo)で表示
  • ピクトでページ画像縮小
  • (前画面の)地図をMapion PDA版で表示
  • SCO(ソースチェッカーオンライン)でソースチェック

また、このほかに、おまけの機能としてテキストエリアにある文字列を

  • escape/unescape
  • encode/decode

することもできます。


このブックマークレットを使うとリファラー(referrer)を外部のサイトに漏らす事が無いので、ユーザーIDやパスワード付きのウェブサイト*1に貼られたリンクからでも安心して外部のサイトにジャンプできます。
逆に言うと、自分の存在感を消してしまうので影の薄い人になってしまいます。


killreferer.htm

<html>
<head>
<title>Bookmarklet LIB</title>
<script>
TBL_URL		= new Array(2);

RAD_CUR		= 0;
RAD_ACT		= 1;


function make_mapion_pda_url(myU) {
var X=unescape(myU).replace(/\&coco=[^&]+/,"").match(/(\d+.){2}\d+\.\d{1,3}/g);
var E=1,N=0;
if(X[0].charAt(0)==1)E=N++;
if(X.length<2) return null;
return "http://www.mapion.co.jp/c/f?grp=pda&uc=1&size=350,350&el="+X[E]+"&nl="+X[N];
}

function change_rad(myrad) {
var myform = myrad.form;
myform.urltxt.value = TBL_URL[myrad.selectedIndex];
}

function change_sel(mysel) {
var myU = mysel.form.urltxt.value;
var outU;
switch( mysel.options[mysel.selectedIndex].value )
{
	case "CASE_NONE":
		break;
	case "CASE_JUMP":
		if(myU) location.href = myU;
		break;
	case "CASE_GINGA":
		location.href = "http://yuki-lab.jp/f.cgi?f=3&u="+myU;
		break;
	case "CASE_TUUKIN":
		location.href="http://www.sjk.co.jp/c/w.exe?y="+myU;
		break;
	case "CASE_IMODE_AJIPON":
		location.href="http://imode.csx.jp/~ajipon/proxy/proxy.cgi?"+escape("page:"+myU);
		break;
	case "CASE_IMODE_UA2DoCoMo":
		location.href="http://tsukau.com/nph-docomo.cgi/000000A/http/"+myU.replace(/http:\/\//,"");
		break;
	case "CASE_PIC_TO":
		location.href="http://pic.to/"+myU.replace(/http:\/\//,"");
		break;
	case "CASE_Mapion_PDA":
		outU = make_mapion_pda_url(myU);
		if(outU) location.href=outU;
		break;
	case "CASE_SCO_CHK":
		location.href = "http://so.7walker.net/?"+myU;
		break;
	case "CASE_escape":
		mysel.form.urltxt.value = escape(myU);
		break;
	case "CASE_unescape":
		mysel.form.urltxt.value = unescape(myU);
		break;
	case "CASE_encodeURI":
		mysel.form.urltxt.value = encodeURI(myU);
		break;
	case "CASE_decodeURI":
		mysel.form.urltxt.value = decodeURI(myU);
		break;
	case "CASE_encodeURIComponent":
		mysel.form.urltxt.value = encodeURIComponent(myU);
		break;
	case "CASE_decodeURIComponent":
		mysel.form.urltxt.value = decodeURIComponent(myU);
		break;
	default:
										alert(" orz ");
		break;
}
}
</script>
</head>
<script>
TBL_URL[RAD_CUR]=document.referrer;
TBL_URL[RAD_ACT]=(location.search.length>1)?location.search.substring(1):"" ;

document.write(
"<form><select name='rad' onChange='change_rad(this)'>"+
"<option value=RAD_CUR			>呼び出し元画面のURL"+
"<option value=RAD_ACT selected	>アクティブなリンクのURL</select><br>"+
"<textarea name='urltxt' cols='30' rows='8' wrap=soft>"+
TBL_URL[RAD_ACT]+
"</textarea><br>"+
"<select name='sel' onChange='change_sel(this)'>"+
"<option value=CASE_NONE selected	>移動方法を選択して下さい"+
"<option value=CASE_JUMP			>直接移動"+
"<option value=CASE_GINGA			>銀河フィルタで表示"+
"<option value=CASE_TUUKIN			>通勤ブラウザで表示"+
"<option value=CASE_IMODE_AJIPON	>i-mode(ajipon proxy)で表示"+
"<option value=CASE_IMODE_UA2DoCoMo	>i-mode(UserAgent2DoCoMo)で表示"+
"<option value=CASE_PIC_TO			>ピクトでページ画像縮小"+
"<option value=CASE_Mapion_PDA		>(前画面の)地図をMapion PDA版で表示"+
"<option value=CASE_SCO_CHK			>SCOでソースチェック"+
"<option value=CASE_escape			>escape   (TEXTAREA)"+
"<option value=CASE_unescape		>unescape (TEXTAREA)"+
"<option value=CASE_encodeURI		>encodeURI(TEXTAREA)"+
"<option value=CASE_decodeURI		>decodeURI(TEXTAREA)"+
"<option value=CASE_encodeURIComponent	>encodeURIComponent(TEXTAREA)"+
"<option value=CASE_decodeURIComponent	>decodeURIComponent(TEXTAREA)"+
"</select></form><br>"
);
</script>
</html>

  ↑ を killreferer.htm としてローカル保存。 ↓ がブックマークレット


(1) 京ぽん用 こちらは、リファラが空になります。

javascript:(function(){location='file://localhost/C:/data/killreferer.htm?'+document.activeElement;})()


(2) 京ぽん だけでなく PCやW-ZERO3Opera でも使えますが、
リファラは、 http://borbis.web.fc2.com/killreferer.htm?【 アクティブリンクになっていた(ジャンプ先の)URL 】 となって、いわゆるリファラの偽装になります。

javascript:(function(){location='http://borbis.web.fc2.com/killreferer.htm?'+document.activeElement;})()

(2)を使う場合は、HTMLファイルをローカルに保存し管理する手間が省けてお手軽ですし、(1)のブックマークレットの使い勝手を試すのに使うこともできます。が、いちど外部のサイトにアクセスする時間が掛かります。



使い方 は、MapionBBで表示←(アクティブリンク/表示中のページ)のURL - borbisの日記や、その他のブックマークレットを参考にして頂ければ、解ると思います。



(2)のブックマークレットで実際に偽装が成功することを試して見るには、(2)のブックマークレットを(クリップボードに)コピーしてから
こちらのリンク → http://www.teria.com/~koseki/memo/referrer/view.php
を選択状態にした後に、(クリップボードから)ブックマークレットをアドレスバーに貼り付けて移動(Enterキーを押)します。(もちろん(2)のブックマークレットを事前にブックマーク登録しておいて、ここで呼び出してもOKです。)
画面が替わったら 「 移動方法を選択して下さい 」 と表示されているコンボボックスをクリックして 「 直接移動 」 を選択すると、リンク先にジャンプして 「 Referrer: http://borbis.web.fc2.com/killreferer.htm?http://www.teria.com/~koseki/memo/referrer/view.php 」 と表示されます。
これで、リンクの貼られていたページのURLは、飛び先のサイトに漏れていない事が判ります。
すなわち、偽装は成功です。




参考
W-ZERO3等の Opera Mobile や Desktop 版の Opera の場合は、data:スキームでリファラを消して移動するブックマークレット - borbisの日記リファラを消すことも出来ます。