Hatena::ブログ(Diary)

放浪するエンジニアの覚え書き このページをアンテナに追加 RSSフィード

2009-04-09

ColorAnimが動かない;XMLSerializerでDOMの中身を確認する

| 17:17 | ColorAnimが動かない;XMLSerializerでDOMの中身を確認する - 放浪するエンジニアの覚え書き のブックマークコメント

以前から連載しているYUI2.6.0のサンプルだが、もたもたしているうちに2.7.0がダウンロードできるようになった。

element.jsbetaからstableになったようで、element-beta.jsはelement.jsに変更しなくてはならない。

大体動くように見えるのだが、YAHOO.util.ColorAnimに少々手こずっている。

APIドキュメントを見ると、第1引数にHTMLElementを指定するようになっているのだが、HTMLTableRowElement(HTMLElementの子供)を指定してもうまくいかない。ためしに、HTMLTableCellElementを指定した場合には、アニメーションできるようだ。

以前に作った、このサンプル(YUI;DataTable Control: Complex Example of Multiple Features)が問題なのだが、2.6.0のときには、変更可能な列を更新すると、更新した行の色が変わるようになっていた。

このエフェクトが現れない。

ちなみに、YUIのOfficial Exampleでも、このエフェクトがでない。

Inline Editのテーブルは、仕様が少し変わったように思われるのだが、どっかに書いてあるのか??


コードは

            var rowColorAnim = new YAHOO.util.ColorAnim(elRow, ...

となっていて(詳細は、以前のログを参照ください)、elRowをYAHOO.lang.dump()でダンプすると、HTMLTableRowElementであるとでてくる。

(2.6.0の時のコードは、elRow.cellsなのだが、理屈的にはいけそうな気がする)

じゃぁ、ちゃんとDOMが取れているのか、ということだと、MozillaFirefox)に組み込まれている、XMLSerializerがとても便利。

	var s = new XMLSerializer()
	var str = s.serializeToString(elRow);
        alert(str);

と書いて、alertボックスに出したのが、以下の画面。

f:id:tetsuya_odaka:20090409162001p:image

ちゃんと取れてるように見えるが。。。。

tetsuya_odakatetsuya_odaka 2009/04/09 17:22 > (2.6.0の時のコードは、elRow.cellsなのだが、理屈的にはいけそうな気がする)

2.6.0で実験してみたところ、elRow.cellsでなくてはいけませんでした。