DOM関連のバグ

John Resigのブログに『The DOM is a Mess』ってタイトルで
しゃべった時のスライドが公開されていて、
その中でgetElementByIdとかのバグがちょろっとのっていたのでメモ。

英語に自信がまったくないので間違っているかも。

getElementById

  • IEOperaの古いやつはnameもみる
  • XMLを簡単に加工できない

getElementsByTagName

  • IE5.5はgetElementsByTagName("*")でelementを返さない
  • IE7はgetElementsByTagName("*")でobjectを返す?
  • IEはIDにlengthってあると.lengthを上書きするらしい

getElementsByClassName

  • FF3,Safari3,Opera9.6にのってるよ
  • FFだとHTMLElement.prototype.getElementsByClassNameを上書きできない
  • Operaは、class="a b"ってあった場合bはひろってくれない

querySelectorAll

  • CSS selectorを使ってDOM Elementを探す
  • FF3.1,Safari3.1,Opera10,IE8で使える
  • IE8の後方互換モードだとつかえない
  • Safari3.1ではout of memoryの問題がある
  • Safari3.2では後方互換モードで大文字だとマッチできない
  • XMLで#idとマッチできない