2008年1月19日
IE錯誤:必須要有物件
剛剛在寫JS DOM,firefox測試完畢,於是切到IE6上測,沒想到連呼叫function的button都不能點,IE又只回應:line 257錯誤,必須要有物件。怎麼辦呢?只好上網查查。運氣還不錯,真的查到我的問題,所以記錄下來。
JS屬性名的直覺性用習慣了,所以我在設定新節點的class時,順手就打成:
node.class='CLASSNAME';
firefox默默的就吃下來了,我也沒想太多。結果IE就跟我抗議了。正統寫法應該要寫成:
node.className='CLASSNAME';
應該是為了避開保留字的關係。不過話說回來,IE6的錯誤訊息真是精簡到討厭的地步,只講一個"必須要有物件",錯誤位置又指向我呼叫function的地方(button那行),連進入function都不肯,這樣我怎麼除錯阿?!下次寫code還是要注意一點。
