クロスブラ「ウザ」対策
こんばんは。
ウェブDBプレス vol.31やその他諸々Ajaxネタが多いので、
触発されて色々いじっているのですが…
クロスブラウザ対策、ウザ過ぎ…
というのが正直な感想ですね。
デキの悪いシステムにパッチ当ててるような感覚が、
自分的に非常に苦手です。
prototype.js とか、behavior.js とか、
それらをうまくラップするライブラリ的な JavaScript が増えてきてよいのですが…
それらも結局分裂する可能性があるわけで。
あまり JavaScript の言語仕様的な側面を掘り下げていないので、
ここの記述は言語仕様なのか、ライブラリの決め事なのかよく分からない、
ってのがよくあります。
その点、上記のウェブDBプレスのvol.31号は有益でございました。
「関数指向」な言語なんですね。
最後にちょっとメモ。
span タグの特定の class 名称がつけられた要素を、
表示段階で「ブラウザで」動的に変換する JavaScript 関数を書いたのですが、
IE と Firefox で動作するように書くのにえらい難儀しました…
(理想論からいえば CSS でやるべきなのでしょうが、
CSS3 で仕様策定中とか書いていました…)
[IE]
要素のボディ文字列へのアクセス: element.innerText
要素に子要素を追加: element.insertBefore(newChild)
[Firefox]
要素のボディ文字列へのアクセス: element.textContent
要素に子要素を追加: element.appendChild(newChild)
※IE→Firefoxの順で動作確認したので、
逆の場合、実はどちらでも動作する、
という表記があるかもしれませんが、
それはご愛嬌で!?
他のブラウザも対応、なんて言ったらやってられないです…
画面周りは基本的に自分は「完全フォロワー」ですね。
長いものに巻かれたいです。
P.S.
あ、IEのバージョンは6.0、Firefoxは1.5.0.1です。
| 固定リンク

コメント