タグ

ブックマーク / sawat.hatenablog.com (4)

  • フォーカスされている要素を取得する方法 - sawatのブログ

    忘れないようにメモしておこう。 var element = (document.activeElement || window.getSelection().focusNode); 前半がIE/Opera用。getSelectionを使うのはFirefox用。Safariは多分ゴメンナサイ。

    フォーカスされている要素を取得する方法 - sawatのブログ
  • sawatの日記 - evalの第二引数とGreasemonkeyのunsafeWindowについて

    「http://d.hatena.ne.jp/brazil/20070420/1177060289」でFirefox専用の第二引数に環境の指定をとるevalの使い方について説明されています。その元はこちら「http://www.tom.sfc.keio.ac.jp/~sakai/d/?date=20070414#p02」で、僕もこれを見たときに初めてしりました。そのころ僕はグリモンのスクリプトをいじっていたので、ちょっと気になっていくつか試してみて、ネタ元のページに以下のようなブクマコメントをしました。 evalの第2引数しらなかった。これを応用すると、GreasemonkeyでusafeWindow.xxx() とする場合、xxx内部からeval("GM_xmlhttpRequest", arguments.callee.caller)でGM_xmlhttpRequestが取得されてして

    sawatの日記 - evalの第二引数とGreasemonkeyのunsafeWindowについて
  • Unicodeエスケープ - sawatのブログ

    付箋紙Greasemonkeyで、GM_setValueに登録した日語の文字化け対策にencodeURIをつかったけど、encodeURIはURIをエンコードするための関数なのであんまり褒められた使い方ではないですね。しかも、encodeURIのようなURLエンコーディングは文字列をUTF-8にしてから、エンコード対象の各バイトを%xx形式*1で表現するので、日語1文字をあらわすのにたいていの場合ASCII9文字が必要になって効率が悪いです。*2 なので、前述のような単に非ASCII文字をエスケープしたいだけのようなケースではUnicodeエスケープを使った方がよいです。Javaのpropertiesとかnative2asciiとかのやつです。 Unicodeエスケープは\uxxxx*3の形式であらわすので、たいていの日語1文字はASCII6文字になって、URLエンコーディングに比べ

    Unicodeエスケープ - sawatのブログ
  • この方法ではArrayを継承することは… できないッ! - sawatのブログ

    「まるごとJavaScript & Ajax ! Vol.1」買いました。 まるごとJavaScript & Ajax ! Vol.1 作者: 天野仁史,舘野祐一,川崎有亮,arton,田中孝太郎,国分裕,山有悟,海野裕也,nanto_vi出版社/メーカー: インプレス発売日: 2007/02/15メディア: 大型購入: 8人 クリック: 98回この商品を含むブログ (78件) を見る えーと、最初にartonさんのJavaScriptの落とし穴があって、その次が弾さんプロタイプベースオブジェクト指向の解説(404 Blog Not Found:javascript - プロトタイプ的継承とか)があって、その次がid:amachangのPrototype.jsの解説で、その先が…でとにかく盛りだくさんですね! あっ。 弾さん、それまずい。 前から気づいてたんですけど、その方法じゃArr

    この方法ではArrayを継承することは… できないッ! - sawatのブログ
  • 1