Google Chrome: JavaScript-Fehlermeldung
Bei der Verwendung von Google Chrome, erhalte ich die folgende Fehlermeldung:
Fehler:
Uncaught SyntaxError: Unexpected token <
Tritt es direkt nach meiner doctype-Deklaration ganz oben auf meiner HTML-Seite
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Irgendwelche Ideen, was diese JavaScript-Fehlermeldung? Es scheint nur auftreten, mit Google Chrome (funktioniert in Safari, Firfox und IE)
InformationsquelleAutor der Frage | 2008-12-26
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ist dieses problem aufgetreten bei mir, als ich mit JQuery laden in den HTML-von XMLHTTPRequest, war HTML, aber der mime-Typ text/javascript ist.
So zum Beispiel, hatte ich ein bisschen code wie:
jQuery ist das senden einer Anfrage an getHtml, und getHtml ist wieder ein einfaches snippet von HTML, mit einem mime/Typ jedoch von
"text/javascript"
. Der Grund, warum diegetHtml
Aktion wurde wiedertext/javascript
ist, weil der accept-header der Anfrage von jQuery ist:Also, alles was ich tun musste, war die Kraft, die einen header von
text/html
und alles funktionierte perfekt.Den parse-Fehler, den Sie sehen, ist ein Ergebnis von Javascript versuchen, eval den Inhalt.
InformationsquelleAutor der Antwort Matthew O'Riordan
In meinem Fall war es verursacht durch eine
eval()
- Anweisung abgebrochen wird. Wenn ich das problem behoben die Fehlermeldung verschwunden.In der heutigen Zeit (Juni 2010) Chrome-Javascript hat einen buggy
eval()
- Anweisung.eval()
Abbrechen wird ohne Ausgabe einer Fehlermeldung, wenn eine variable in dereval()
- Anweisung zugewiesen wurde das reservierte Wort 'delete
'. Es dauerte fast eine Woche, um aufzudecken, diese Fehler, daeval()
bricht ohne Warnung oder Fehlermeldung und der Abbruch hat böse Nebenwirkungen.War ich mit
eval()
um dieses Ergebnis zu erreichen: obj.löschen = somevalue.Dieser code verursacht eine eval() abort:
Dieser code funktioniert:
In der Zusammenfassung verwenden Sie nicht
eval()
zu konstruierenobj.delete = somevalue
. Verwendeneval()
zu konstruieren, die entsprechende Anweisungobj["delete"] = somevalue
.InformationsquelleAutor der Antwort BlackMagic
Vielleicht den HTTP-content-type nicht
text/html
oderapplication/xhtml+xml
?InformationsquelleAutor der Antwort orip
Fand ich diese Google Gruppen Frage.
Einige andere mit dem problem, jedoch ohne Auflösung.
http://www.google.com/support/forum/p/Chrome/thread?tid=7e9f87870a37e401&hl=de
InformationsquelleAutor der Antwort
Versuchen Sie, die Umstellung der Reihenfolge der css-und js-Deklarationen. Arbeitete für mich.
InformationsquelleAutor der Antwort Pooch
Auf die Gefahr hervorholen eines alten Threads (ich glaube, es ist besser, Sie halten alle Informationen, die in einem Ort), Chrome ist immer noch werfen diese Fehler, wie es scheint. Ich hab die folgenden bei der Entwicklung einer Website und versucht, alle möglichen Dinge auf der Seite mit JS und PHP, um es loszuwerden. Die Fehler, die ich bekam, war:
Schließlich bei der überprüfung von code-Validität in FireFox stolperte ich über die Antwort als Warnung, dass es eine
'&'
im text, der umgewandelt werden soll, um'&'
- sobald dies gemacht wurde, das Chrome Fehler ging Weg.Steve
InformationsquelleAutor der Antwort Steve
Wenn Sie wieder eine Antwort auf eine ajax-Anfrage im JSON-Format, stellen Sie sicher, dass Sie
'application/json'
für den Content-Type.InformationsquelleAutor der Antwort Sacha
Wenn es eine Rails-App überprüfen Sie, dass die format.js in der response_to block.
InformationsquelleAutor der Antwort Dinatih
Hatte ich das problem, wenn ich versuche zu setzen
.innerHTML
dynamisch generiert mit php (es erzeugt wurde multi-line).Ersetzt Zeilenumbrüche durch Leerzeichen das problem gelöst.
InformationsquelleAutor der Antwort dawid
Ich auch festgestellt diesen Fehler in Chrome Dev Tools, und meine Ursache war ähnlich wie Matthew O ' Riordan ist, außer es war nicht das Akzeptieren, MIME-Typ sondern eher der kaputte AJAX-URL.
Hatte ich neu angeordnet, meine Ordner-Struktur und vergessen, Sie zu aktualisieren der URL; mal habe ich Fix die URL, die Dev-Tools JS-Fehler war Weg.
Hoffe, das hilft! 🙂
InformationsquelleAutor der Antwort TzeMan