DOM Range のテストケースを書きました
W3C で DOM Range という便利なオブジェクトが勧告されています。
http://www.w3.org/TR/DOM-Level-2-Traversal-Range/ranges.html
DOM Range って何?
DOM Range とは、 DOM ツリーの任意の範囲を表すための仕様です。
DOM Range を使うと、「ここからここまでのノードを全部削除」とか「ここからここまでの要素をここに移動」というような操作が簡単にできます。
もちろん、ノードの途中も選択できます。
また、 DOM Range はコンテンツをマウスなどで選択したときの選択範囲を表す Selection オブジェクトからも使われています。
(ちなみに Selection オブジェクトの仕様は HTML5 で定義されています。 http://www.whatwg.org/specs/web-apps/current-work/#selection1)
そろそろ、ちゃんと DOM Range 使いたい!
というわけで、テストを書きました。
まだまだ、バグがある
どこがバグってるのか細かくは見てないのですが、どのブラウザもそれなりにバグってる感じですね。
僕のテストが間違ってたら教えてください。
IE6 と IE7 と IE8 を同じマシンで共存させる方法
追記:
現在は IETester というソフトウェアを使うのがベストだと思います><
結論から言うと
Jeremy Smith's blog: Success! IE 6, 7, and 8 Running on Same Machine (Plus 5.5 and 5.01) に書いてある通りで
- IE8 をインストール
- http://tredosoft.com/IE7_standalone の IE7 Standalone をインストール
- http://tredosoft.com/Multiple_IE の Multiple IE をインストール
の順で、共存させることができました。
IE8 を入れるのを戸惑っている人は
入れてみたらいかがでしょうか。
ちなみに
以下のサイトからダウンロードできる Standalone IE6 は IE8 と共存できませんでした。
browsers.evolt.org
VMware Fusion で同時起動したところ
左から IE6, IE7, IE8, Firefox 3.0b4, Safari 3.1, Opera 9.5b1
いい感じです。
Apple 謹製の JavaScript デバッガ「Drosera」が便利な件
Drosera とは
1000speakers 後のハッカソンで 山岸くん が「Drosera っていうアプリがある!」って発見して、教えてもらいました。
Drosera は WebKit 用の JavaScript デバッガで、 Windows XP でも Mac でも動くみたいです。
WebKit Build Archives | WebKit からダウンロードした WebKit のアーカイブの中に同封されています。
で、実際に使ってみた感じ
できること
- ステップ実行
- コールスタックを見る
- レキシカルな変数をウォッチする
などなどです。
まとめ
Web インスペクタと併用すれば効果抜群ですね!