Komprimierungsprobleme mit JQuery-Datei in YUI Compressor
Lesezeit: 2 Minuten
Benutzer47378
Ich versuche, ein paar Dateien mit dem YUI-Kompressor zu verkleinern. Ich scheine jedoch einen Fehler in 2 Codezeilen zu erhalten, der die Komprimierung verhindert. Die .js-Datei für jcarouselLite enthält 1 Fehler und mein eigener Code enthält den anderen.
Ich habe es eingegrenzt und in beiden Fällen sieht es so aus, als ob die in jQuery verwendete Float-Eigenschaft dies verursacht. Die Zeile lautet:
Ein funktionierendes Beispiel für den Fehler kann durch Ausführen von angezeigt werden jCarouselLite-Code durch den YUI-Kompressor, aber im Grunde ist der zurückgegebene Fehler eine ungültige Eigenschafts-ID.
Hatte jemand ähnliche Probleme mit dem YUI-Kompressor?
Klingt so, als müssten Sie Firefox und den Firebug JS-Debugger ausführen, er sollte vielleicht solche Dinge abfangen.
– TravisO
8. Januar 2009 um 14:58 Uhr
Halbmond frisch
Es ist nicht YUI per se, es ist das jcarouselLite js. “float” ist ein reserviertes Wort. Es muss in Anführungszeichen gesetzt werden. Z.B:
Ähnliches Problem mit Ihrem eigenen Code. YUI versucht sein Bestes, um dieses js zu kompilieren, wird Sie jedoch vor Code wie dem, den Sie gefunden haben, ablehnen/warnen. IMO tut es das Richtige.
Um genau zu sein, Float ist kein reserviertes Wort in Javascript, aber YUI kennzeichnet es, weil es ein “mögliches zukünftiges Schlüsselwort gemäß der ECMAScript-Spezifikation” ist.
– BishopZ
9. Juli 2012 um 15:41 Uhr
Ich brauchte eine Weile, um das herauszufinden var coordinates = { long: 0, lat: 0 }; war ein Problem (langes reserviertes Wort). Vielen Dank.
– Pawel Krakowiak
28. Mai 2013 um 13:22 Uhr
Ich habe dieses Problem ein paar Mal mit dem Wort “Klasse” getroffen. Wenn Sie YUI auf der Serverseite verwenden, sollte es die Zeilennummer ausspucken, über die es sich beschwert.
Hier ist eine Liste mit reservierten Wörtern, die ziemlich umfassend erscheint.
Die anderen Antworten hier beantworten das eigentliche Problem (reservierte Wörter). Aber ich benutze YUI via BundleTransformer und es gibt keine Zeilennummern aus, also war ich ein wenig verloren, wo ich suchen sollte.
Um das Finden der Keywords zu beschleunigen, suchte ich nach einem anderen Tool.
In meinem Fall, als YUI meine Dateien nicht komprimieren konnte, lag es daran, dass ich den ‘Debugger’ in der js-Datei hatte. Ich hoffe, das erspart jemand anderem mehrere Stunden Debugging!
Ich habe eine benutzerdefinierte Version für das Update von Yui Compressor vorbereitet
Klingt so, als müssten Sie Firefox und den Firebug JS-Debugger ausführen, er sollte vielleicht solche Dinge abfangen.
– TravisO
8. Januar 2009 um 14:58 Uhr