2012-10-03 14 views
6

Başka geliştiricilerin kod hata ayıklama çalışıyorum ve bana hayatı boyunca bu değişkende saklanır ediliyor anlamaya olamaz:Bu jQuery seçiciyi açıklayın.

var dl = $("<dl>",{class: 'my_class'}); 
Bu hat "Beklenen tanımlayıcı dize oluşturuyor

veya numara "IE8 ve daha düşük hata mesajı, ancak diğer tarayıcıların hiçbiri ve ben farklı bir sözdizimi ile aynı şeyi başarabilirim başka bir yolu var mı anlamaya çalışıyorum.

Herhangi bir tavsiye memnuniyetle karşılanacaktır.

cevap

8

Bu my_class değerine sahip bir class niteliğiyle (jQuery nesnesi sarılmış) bir dl elemanı yaratıyor. Bu işlevle ilgili daha fazla bilgi için jQuery docs'a bakın.

Hata alıyorsunuz, çünkü class JavaScript'te ayrılmış bir sözcüktür. Bunu alıntı yaparak bunu düzeltebilirsiniz:

var dl = $("<dl>", { "class": "my_class" }); 

Alternatif olarak, (herhangi bir tarayıcıda alıntı zorunda kalmazsınız olan) yerine className özelliğini ayarlayabilirsiniz:

var dl = $("<dl>", { className: "my_class" }); 

Not ES5 talent numaralı telefonun numaralı mülkün mülkiyet isimleri olarak kullanıldığını söylüyor. Ancak, görünüşe göre, IE'nin eski sürümlerini desteklemeniz gerektiğinden, bunu unutup yine de alıntılamak zorunda kalacaksınız. Sadece sürümü 9 aşağıda IE desteğini düşerse, hiç kodunuzu değiştirmek zorunda etmeyeceğini;

2

class JavaScript ayrılmış bir sözcüktür), tırnak ile sarın olmalıdır:

var dl = $("<dl/>",{'class': 'my_class'}); 
İlgili konular