« CYCLE STARのバックミラー | トップページ | 朝から親父だけ加古川沿い走る。 »

2008.03.21

IE7 + JSON で困った件

その筋の人にはちょっと有用かも知れんので、書いておきます。その筋以外の人には何の情報にもならないけどね。

JSON書式でオブジェクトを生成する場合、classという属性を指定するには、ダブルクォートで括って置かないと、IE7でちゃんと動きません。

var foo = { class : "bar"};//×
var foo = { "class" : "bar"};//○

動かないというよりは、この類のコードを外部のjavascriptファイルに記述してたら、IE7ではそのスクリプトがまるごと無視されます。読み込まれもせず、実行もされず。

Dojoの dijit.layout.ContentPane のコンストラクタでclass属性 を指定するようにjsonを記述したら、IE7で動かなくなっていた。いろいろ調べてみるとそのスクリプト自体が読み込まれてなかったことが今朝やっと判明。

FireFoxではOKなので、IE7は、class というのを予約語的に扱っているのでしょうね。その上で、構文解析中に無言で落ちている模様。エラー出してないって事は、不具合だろうな。MSさんこれちょっと恥ずかしいのでは?

« CYCLE STARのバックミラー | トップページ | 朝から親父だけ加古川沿い走る。 »

コメント

JScript でclass は、将来的に使用される予約語として登録されていて、識別子として使うことはできません。(JScript のマニュアル(ヘルプ?)に書いてあります。)
そういう仕様です。

>無言で落ちている模様。エラー出してないって事は、不具合?
ウチのIE7では、ちゃんとそのようなエラーダイアログがでますので、設定の違いだと思います。

おおおっ。BLUEPIXYさん召喚してしまいましたね。
そーなのですか、仕様なのですね。

Javascriptの予約語で検索すると出るわ出るわわんさかあるじゃないですか、使われてなさそうな予約語。しかもほとんどC/C++系統って事で何でも入れちゃった感がありますね。

ま、とにかく、恥ずかしいのはわしということです。ごめんねIE7&Bill。しかし、エラーがでないのはなぜでしょうね。

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: IE7 + JSON で困った件:

« CYCLE STARのバックミラー | トップページ | 朝から親父だけ加古川沿い走る。 »

2020年7月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
フォト

Google AdSense

銀の弾丸

無料ブログはココログ

他のアカウント