「getElementById()でname属性が検索される?」でIE8だとどうなるか
getElementById()でname属性が検索される?というエントリがありました
で、IE6とIE7はしょうがないとして、IE8はどうなってるのか。というか、まともになっていて欲しいという思いに駆られて調べてみた。
Sample1
ソースとかは上記エントリと同じものを使用。OSはWinXPで。
<!DOCTYPE html PUBLIC "-//W3C/DTD XHTML 1.0 Strict//EN" "http://www.w3c.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3c.org/1999/xhtml"> <head> <meta http-equiv="Contet-Type" content="text/html; charaset=TF-8"/> <title></title> <script type="text/javascript"> window.onload = function(){ alert(document.getElementById("txt1").value) } </script> </head> <body> <input type="text" name="txt1" value="name"></input> </body> </html>
結果
エラーだ!エラーになったよ!
getElementById("txt1")が引けてないということですね。
Web ページ エラーの詳細
ユーザー エージェント: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; GTB6; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
タイムスタンプ: Tue, 9 Feb 2010 04:48:53 UTC
メッセージ: オブジェクトがありません。
ライン: 8
文字: 13
コード: 0
URI: sample1.html
Sample2
これは当然取れるわけですよ。
<!DOCTYPE html PUBLIC "-//W3C/DTD XHTML 1.0 Strict//EN" "http://www.w3c.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3c.org/1999/xhtml"> <head> <meta http-equiv="Contet-Type" content="text/html; charaset=TF-8"/> <title></title> <script type="text/javascript"> window.onload = function(){ alert(document.getElementById("txt1").value) } </script> </head> <body> <input type="text" name="txt1" value="name"></input> <input type="text" id="txt1" value="id"></input> </body> </html>
はい、とれました。
- -
Web ページからのメッセージ
- -
id
- -
OK
- -
というわけで
IE8になってようやくみんなの仲間入りができたということが確認できましたね。