DEVELOPERS BLOGデベロッパーズブログ
- HOME >
- 加藤 正人のデベロッパーズブログ >
- IE のワナ (script タグの type 属性値)
加藤 正人のデベロッパーズブログ
- 氏名
- 加藤 正人
- 役職
- 多分SE
- 血液型
- 秘密
- 出没
- 美味しいもののあるところ
- 特色
- タヒチ大好き。ちょいメタボ。
- 2020/12/15
- CakePHP3 のリダイレクトがうまく行かない例
- 2020/11/12
- Apache Bench
- 2020/10/05
- PhpSpreadsheet でExcel ファイルを読み込む (CakePHP3)
このところ 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年経ても旧式表記を使い続けないといけないというのは (非推奨や禁止ではないにしても) 問題があるのではないだろうか。
関連エントリー
- 2020/07/03
- YOLP (Yahoo! Open Local Platform) のサービス縮小
- 2017/12/02
- iframe の中身の動的切り替え
- 2017/09/06
- CakePHP 2.x の Cookie と js.cookie.js
- 2015/11/07
- JavaScript でのクロージャからの外部変数参照
- 2014/11/08
- Google Maps で郵便番号⇒住所変換
- 2014/04/26
- ブラウザで一時的にエンコードを変更する
- 2014/02/22
- IE8 と style 値でハマった話
- 2013/10/22
- Google Maps Javascript API V2 提供終了
- 2013/09/17
- Google Bot と JavaScript
- 2013/08/10
- IE と IFRAME のワナ
- 2013/06/01
- jQuery UI ボタンと IE8 のワナ
- 2013/05/11
- 「JavaScript でバリデーション」を拡張したい
- 2013/03/23
- IE10 と CKEditor
- 2013/03/09
- JavaScript でバリデーション
- 2013/02/23
- JavaScript で入力フィールドの文字カウンタを実装してみる
- 2012/12/08
- SyntaxHighlighter ではまった話
2020/12/15
2020/11/12
2020/10/05
2020/09/11
2020/08/03