Проблемы сжатия с файлом JQuery в компрессоре YUI
Я пытаюсь минимизировать несколько файлов с помощью компрессора YUI. Однако, похоже, я получаю сообщение об ошибке на двух строках кода, что предотвращает сжатие. Файл .js для jcarouselLite содержит 1 ошибку, а мой собственный код содержит другой.
Я сузил его и в обоих случаях похоже, что свойство float, используемое в jQuery, вызывает это. Линия:
li.css({overflow: "hidden", float: o.vertical ? "none" : "left"}); (jcarousellite)
$("#now-playing .js-kit-rating div:first").css({width: "80px", float: "right"}).addClass("clearing"); (own code)
Рабочий пример ошибки можно увидеть, запустив код jCarouselLite через компрессор YUI, но в основном полученная ошибка является недопустимым идентификатором свойства,
У кого-то были проблемы с компрессором YUI?
Ответы
Ответ 1
Это не YUI per se, это jcarouselLite js. "float" - это зарезервированное слово. Его нужно вводить в кавычки. EG:
li.css({overflow: "hidden", "float": o.vertical ? "none" : "left"});
Аналогичная проблема с вашим собственным кодом. YUI изо всех сил пытается скомпилировать этот js, но будет отказывать/предупреждать вас о коде, подобном тому, который вы нашли. ИМО делает правильные вещи.
Ответ 2
Я несколько раз сталкивался с этой проблемой со словом "класс". Если вы используете YUI на стороне сервера, он должен выплюнуть номер строки, на который он жалуется.
Здесь список зарезервированных слов, который выглядит довольно всеобъемлющим.
http://mattsnider.com/languages/javascript/reserved-words-in-javascript/
Ответ 3
Другие ответы здесь отвечают на фактическую проблему (зарезервированные слова). Но я использую YUI через BundleTransformer, и он не выводит номера строк, поэтому я немного потерял информацию о том, где искать.
Чтобы ускорить процесс поиска ключевых слов, я пошел искать другой инструмент.
Этот онлайн-компрессор YUI помог мне найти проблемное имя свойства.
Ответ 4
в моем случае, когда YUI не смог сжать мои файлы, это было потому, что у меня был "отладчик" в файле js. Надеюсь, это поможет кому-то еще несколько часов отладки!