2009-01-08 115 views
24

我想用YUI壓縮器來縮小几個文件。但是,我似乎在兩行代碼中出現錯誤,這會阻止壓縮。 jcarouselLite的.js文件包含1個錯誤,而我自己的代碼包含另一個錯誤。YUI壓縮器中的JQuery文件的壓縮問題

我縮小了它,在兩種情況下,它看起來像在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) 

錯誤的工作例如可以通過YUI的壓縮機運行jCarouselLite code待觀察,但基本返回的錯誤是無效的屬性標識。

有沒有人有類似的問題與YUI壓縮機?

+0

聽起來像你需要運行Firefox和Firebug JS調試器,它應該抓住這樣的事情,也許。 – TravisO 2009-01-08 14:58:20

回答

58

這不是YUI本身,它是jcarouselLite js。 「浮動」是一個保留字。它需要放在引號中。 EG:

li.css({overflow: "hidden", "float": o.vertical ? "none" : "left"}); 

與您自己的代碼類似的問題。 YUI正在盡力編譯那個js,但會拒絕/警告你所發現的代碼。海事組織正在做正確的事情。

+1

這節省了我們很多時間 - 感謝您的回答! – DanP 2011-04-22 05:53:21

0
在我的情況

當YUI無法壓縮我的文件,那是因爲我在js文件中的「調試」。希望這可以爲別人節省數小時的調試時間!

2

其他答案在這裏回答實際問題(保留字)。但是我通過BundleTransformer使用YUI,它不輸出行號,所以我有點失落,在哪裏尋找。

爲了加快找到關鍵字的過程,我去尋找另一個工具。

This online YUI compressor幫我找到了有問題的屬性名稱。