http://q.hatena.ne.jp/1189079167の発展系の質問です。

以下のようなオーバーライドでNGな理由はなんでしょうか?NGとはFireFoxでURLエンコードされてしまう点と、optionが無効(省略の場合のデフォにならない)になる点です。
※uriに2バイトコードを含みます。
window.openRaw = function( uri, target, option, history ) {
window._toString = window.toString;
window.toString = function() { return unescape( window._toString() ); };
window.open( uri, target, option, history );
};
window.openRaw( uri );

回答の条件
  • URL必須
  • 1人1回まで
  • 登録:
  • 終了:2007/09/08 02:36:24
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:Marine-Blue No.1

回答回数238ベストアンサー獲得回数12

ポイント60pt

unescapeを使っても文字コードなどが違えばデコードできませんし、設定によってURLエンコードに使う文字コードを変更できるため無理です。

…というかブラウザ設定に依存するようなスクリプトはなるべく使わないほうが無難だと思いますよ。

可能であるならば2バイト文字を使わず処理する方法を考えるべきです。


optionのほうは・・・よく分からないのでパス。

http://www.hatena.ne.jp/

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません