javascript

他のライブラリとの競合を避けたブロックスコープの書き方

色々なライブラリを使用している既存のページなどで、ちょっとした処理を挟みたい場合、Prototype などと、$() が現状・将来的にも競合しないようにするには、 jQuery.noConflict() を一般的に使いますが、もっと影響範囲を狭く、シンプルに実現する方法が以…

YouTube で閲覧中動画の短縮 URL を表示するブックマークレット

Chrome 拡張もあるのですが、短縮 URL 取得のためだけに拡張増やすのもメモリが勿体無いのでブックマークレットを作りました。動作確認 Chrome 7.0 です。ブックマークレットからは document.execcommand('Copy') でクリップボードを操作出来ない(Chrome 拡…

「Google JavaScript Style Guide」の文法チェックツール + vim で JavaScript の開発を2倍楽にする方法

Google が先日 JavaScript のコーディングスタイルガイド Google JavaScript Style Guide (邦訳) を発表しましたが、今度はその文法に沿ってチェックをしてくれる Lint ツール Closure Linter を公開したようです。(via. 「Google JavaScript Style Guide」…

iPhone の Mobile Safari で JSON を(エン|デ)コードする

JavaScript でデータを扱っていると、JSON でシリアライズなどしたくなりますが、Safari 4.04 や FireFox 3.6.8 では、JSON.stringify() や、JSON.parse() が使えますが、iOS 3.1.2 の Mobile Safari には実装されてません。そこで、ネイティブで JSON が実…

ローディングアイコンを画像の代わりに canvas でアニメーション描画

アニメ GIF だと、背景色に合わせて透過画像を作らないといけないので、canvas でアニメーションしてみました。ソースはこちら http://gist.github.com/380581loading = new LoadingIcon('rgb') したのちに、 loading.start() すると setInterval() でアニメ…