«前の日記(2003年02月25日) 最新 次の日記(2003年02月27日)» 編集

混沌の庭研究所

1998|06|07|08|09|10|11|12|
1999|03|04|05|06|07|08|09|10|11|12|
2000|01|02|03|04|05|06|07|08|09|10|11|12|
2001|01|02|03|04|05|06|07|08|09|10|11|12|
2002|01|02|03|04|05|06|07|08|09|10|11|12|
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|06|07|08|09|10|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|05|06|07|08|10|11|12|
2011|01|03|09|
2012|02|03|
2013|05|12|
2019|10|

2003年02月26日 水曜日 [長年日記]

_ [JavaScript] Bookmarkletその3

鼻炎薬飲んだら眠くて眠くてたまりません。……どうすればいいんだー! ところで、昨日のpinktower.com消去は、スクリプト内で「pinktower.com」でないといけない部分が「pnktower.com」だったりしたのでこっそり直しました。……てへ。動かねぇよゴルァ!って方は、ブックマークのURL部分を修正するか、再登録でお願いします。

昨日のリンク先抽出では、2chのスレからは直リンクしか抜けないし、mailtoなリンクやらナビゲーションリンクやらがごっそり入るし、そもそもime.nuやらpinktower.comが残る(最初にime.nu消去とかを使っておけばいいのだけど)ので、2chスレ専用にURLっぽいもの(httpとttpから始まるもの)を抜き出すブックマークレットを作ってみたー。

javascript:
var L = document.links;
var STR = '';
for (i = 0; i < L.length; i++) {
	if (/ime\.nu/.test(L[i].href))
		STR = STR + '<br>' + L[i].href.replace('ime.nu/','');
	if (/pinktower\.com/.test(L[i].href))
		STR = STR + '<br>' + L[i].href.replace('pinktower.com/','');
}
var RES = document.getElementsByTagName('dd');
for (i = 0; i < RES.length; i++) {
	COM = RES[i].childNodes;
	for (j = 0; j < COM.length; j++) {
		var VALUE = COM[j].nodeValue;
		if (/^ttp/.test(VALUE))
			STR = STR + '<BR>h' + VALUE;
	}
}
STR;

2chスレ用URL抽出

上の「2chスレ用URL抽出」のリンクを右クリックでブックマーク登録してクダサイ。2chのスレでは投稿内容はdd要素になっているので、そこだけを対象にすればいいかなーと思ったのだけど、httpから始まる場合はnodeがひとつ深くなっている(……でいいのか?)のです。おかげで何をやってるのかよくわからなくなってしまったので、httpから始まるものはdocument.linksで集めてime.nuかpinktower.comを含むものだけ抜き出すという形で処理。その後、dd要素のchildNodeのnodeValueを順次チェックしてttpから始まるものを抜き出し。

ところで、MacJournalに作ったスクリプトを貯めておいて、ちくちくと編集していたら、それまで動いていたスクリプトが動かなくなってしまったのです。しばらく理由がわからなかったのだけど、どうやら\とバックスラッシュが違う文字になるためのようで。……unicodeだからなのか?