Jintrick.netagenda2001年10月アーカイブ → 2001年10月04日

UserJavascript日記

クッキー削除法メモ

クッキーをJavaScriptでどうやって削除するのか、これは、簡単である。ただ単に有効期限を過去の時間に設定してやればよい。

なんてのは。実はこの方法は、pathが一致していなければ意味が無い。

まずはじめに、document.URLを / (スラッシュ)で分割して配列に収める。次に、1から始めてその配列の数だけクッキーに「有効期限を過去の時間に設定した値」を書き込む。pathには各配列の値を入れる。1から始めるのは、丁度配列の2番目が空の文字列になるため、pathを明示していない場合のクッキーを削除できるからである。(配列[0]にはhttp:が入っている)この要領で確実に他所のサイトのクッキーを削除できる……と、思う。しかしこれは乱暴なので、実際には深い階層のpathから順に試していき、消せた時点でループから抜けると良いかも知れない。 できないことは無いけども冗長だしベターな方法が見つかったので取り消し。ユーザーの立場に立って、にわかにクッキーに関心が沸いてきた。

ユーザーの利便性のためにあるはずのクッキーを、何故ユーザーが能動的に扱えないのか。例えば文字サイズなど、サイトによってベストな大きさはそれぞれ異なる。サイトを移動するたびに変更するより、クッキーを使って覚えておいた方が良いに決まっている。サイト管理者を罵る前に、ユーザーはブラウザ製作会社を責めるべきだ。そんなこと言っても仕方ないから、自分で何とかするわけである。

Proxomitronへの依存度を最小に抑えた。link要素はDOMで、select要素はdocument.writeで書き出すようにし、イベントはdocument.onclick に代入したので、埋め込むのは本体のスクリプトタグだけに。これで、フィルターがうまく機能しないことはほとんど無くなった。


webmaster@jintrick.net
公開: 2001年10月04日
カテゴリ: