2013-03-06 16 views
72

ben yapmış olduğun downloaded D3.js from d3js.org (zip dosyasına link), bu unzipped ve aşağıdaki HTML sayfası olarak başvurulan:D3.js: "Yakalanmamış SyntaxError: Beklenmeyen belirteç ILLEGAL"?

<html> 
<head> 
<title>D3 Sandbox</title> 
<style> 
</head> 
<body> 
<script src="/d3.v3.js"></script> 
</body> 
</html> 

Ama bu sayfayı yüklediğinizde, (Chrome'da) benim konsol beni bu veriyor hata:

Uncaught SyntaxError: Unexpected token ILLEGAL: line 2 

pi and e symbols at the start of the file'dan hoşlanmaz. Errrr ... bu konuda ne yapabilirim? Dosyayı python'un SimpleHTTPServer ile sunuyorum.

Güncelleme: evet Biliyorum bir CDN sürümüne bağlanabiliyorum, ancak dosyayı yerel olarak sunmayı tercih ederim.

+0

benim için sorun, basithttpserver varsayılan başına utf8 desteklemiyordu: http://stackoverflow.com/questions/15288891/how-can-i-serve-files-with-utf-8-encoding-using- python-simplehttpserver – lewurm

cevap

128

HTML konak belge üzerinde UTF-8 karakter kümesi belirterek deneyin:

<meta http-equiv="content-type" content="text/html; charset=UTF8">

+5

benim için hile yaptı, herhangi bir sebepten dolayı uzun sürmedi. teşekkürler –

+5

Bunun neden gerekli olduğunu söyleyebilir misiniz? – BBischof

+2

BBischof: D3, UTF8 olmayan belgelerde UTF-8 sembolleri (π gibi) geçersiz kılmayı içerir –

4

Ekleme 'charset = "utf-8"' ı charset ayarlama çalıştı

<script src="/d3.v3.js" charset="utf-8"></script> 
+1

Lame olsa da, kullanıcının View- > Chrome'da Otomatik Algılama ayarını kodlama. --ascii seçeneği ile çirkin bir şekilde çalıştırarak daha güvenilirdir. –

+0

Bu aslında benim için hile yaptı. – dmeu

5

doc ve komut dosyasının kendisinde, ancak Chrome'un umurunda değil gibi görünüyor. Yanlış bir şey yapıyorum emin değilim.

İlk önce --ascii seçeneği ile uglify ile çalıştırarak başarıyı buldum.

GÜNCELLEME: Chrome'da Görünüm -> Kodlama ayarımın Otomatik Algılamada değil, bazı Western kodlamada olduğu ortaya çıkıyor. Neden olduğundan emin değil, ancak bu sorunu çözmek sorunu çözdü. Bu ayarın, betik etiketinde bir karakter kümesini haklı çıkaracağı saçma. Kullanıcıların aynı durumda olabileceğini ve bunu anlayamayacağını düşünürsek, başarıyı sağlamak için hala uglify kullanıyorum.

+0

aynı soruna sahipti. Otomatik tespit için kodlama ayarının değiştirilmesi sorunu çözdü –

0

Dize birleştirmeleriniz arasında artı işareti olup olmadığını kontrol edin, eğer bu hata oluşmazsa.

İlgili konular