2013-01-14 10 views
5

Wiedziałem, że IE8 to ból, ale nigdy nie widziałem, żeby sprawiało mi to tyle kłopotu. Wszystko, co próbuję zrobić, to zdefiniować obiekt JavaScript i powoduje błąd, zatrzymując wszystkie skrypty od pracy na stronie.Błędy IE8 podczas definiowania obiektu JavaScript?

Błąd to "Oczekiwany identyfikator, ciąg lub liczba" i oznacza, że ​​problem występuje, gdy zdefiniuję poniżej właściwość "klasa". Widziałem niezliczone skrypty definiujące obiekty w ten sposób, więc dlaczego IE8 wymiotuje na to?

Wyizolowałem kod naruszający prawa do tego. Umieszczenie tego w nagłówku strony HTML i uruchomienie jej w IE8 spowoduje problem, który widzę.

<script type="text/javascript" language="javascript"> 
var atts = {class: "trigger"}; 
</script> 
+2

IE jest straszne dla „zastrzeżone słowa "które nie są. spróbuj zmienić tymczasowo klasę na coś innego, np. "foo" i zobacz, co się stanie. –

Odpowiedz

6

zdefiniować za pomocą odpowiedniego typu danych przez umieszczenie w cudzysłowie, "class"

5

To dlatego, że class jest zastrzeżonym słowem kluczowym. Spróbuj umieścić cudzysłowy wokół niego 'class'

+1

Widziałem wiele wtyczek potrzebujących klas. Typową metodą jest nadanie jej nazwy "klass". –

+0

'className' jest innym powszechnie używanym (Backbone) –

0

w addtion do @PickYourPoison odpowiedzieć Można również skorzystać z tej sztuczki:

var atts= {}; 
atts["class"] = "LOL"; 
Powiązane problemy