DEVELOPERS BLOGデベロッパーズブログ
このところ IE8 での災難が続いている。今回は、script 要素の type 属性でハマる羽目に陥った。
普段は JavaScript コードを書く場合は何気なく script タグの属性に type="text/javascript" のように記載しているのだが、先日たまたま type="application/javascript" としてしまった。これでも Firefox や Chrome および IE10 では動作するのだが、IE9/8 では全く無視され実行されない。
2006年4月に公開された RFC 4329 では既に text/javascript は旧式扱いで今後は application/javascript を使用することになっているのだが、2009年3月公開の IE8 はもとより 2011年3月公開の IE9 でさえ対応していないことが判明。
ちなみに Firefox は少なくとも 2008年6月公開の Firefox v3 でサポートしていることが分かっている。Google Chrome については 1.0 リリースが 2008 年であったことから、当初の設計から RFC 4329 対応であったと考えられる。
両者とも text/javascript および application/javascript の両方をサポートしているので text/javascript で記述しておけば「とりあえず」は全て丸く収まるのだが、 RFC 4329 公開から既に7年経ても旧式表記を使い続けないといけないというのは (非推奨や禁止ではないにしても) 問題があるのではないだろうか。
この記事は加藤 正人さんが書いています!
- 氏名
- 加藤 正人
- 役職
- 多分SE
- 血液型
- 秘密
- 出没
- 美味しいもののあるところ
- 特色
- タヒチ大好き。ちょいメタボ。
- 2020/12/15
- CakePHP3 のリダイレクトがうまく行かない例
- 2020/11/12
- Apache Bench
- 2020/10/05
- PhpSpreadsheet でExcel ファイルを読み込む (CakePHP3)
2020/12/15
2020/11/12
2020/10/05
2020/09/11
2020/08/03