2011-01-21 74 views
3

對於任何人誰擁有使用Combres一些訣竅,這是給你:

我Combres.XML看起來是這樣的:

<?xml version="1.0" encoding="utf-8" ?> 
<combres xmlns='urn:combres'> 

    <filters> 
    <filter type="Combres.Filters.FixUrlsInCssFilter, Combres" /> 
    </filters > 
    <cssMinifiers> 
    <minifier name="yui" type="Combres.Minifiers.YuiCssMinifier, Combres"> 
     <param name="CssCompressionType" type="string" value="StockYuiCompressor" /> 
     <param name="ColumnWidth" type="int" value="-1" /> 
    </minifier> 
    </cssMinifiers> 
    <jsMinifiers> 
    <minifier name="yui" type="Combres.Minifiers.YuiJSMinifier, Combres"> 
     <param name="IsVerboseLogging" type="bool" value="false" /> 
     <param name="IsObfuscateJavascript" type="bool" value="true" /> 
     <param name="PreserveAllSemicolons" type="bool" value="false" /> 
     <param name="DisableOptimizations" type="bool" value="true" /> 
     <param name="LineBreakPosition" type="int" value="-1" /> 
    </minifier> 
    </jsMinifiers> 
    <resourceSets url="~/combres.axd" defaultDuration="30" 
           defaultVersion="auto" 
           defaultDebugEnabled="false" 
           defaultCssMinifierRef="off" 
           defaultJSMinifierRef="off"> 
    <resourceSet name="siteCss" type="css" minifierRef="yui"> 
     <resource path="~/css/jquery-ui-1.7.2.custom.css" /> 
     <resource path="~/css/OMNIv2.css" /> 
     <resource path="~/css/dataTable.css" /> 
    </resourceSet> 
    <resourceSet name="siteJs" type="js" > 
     <resource path="~/js/jquery-1.4.2.min.js" minifierRef="off" /> 
     <resource path="~/js/jquery.jstree.min.js" minifierRef="off" /> 
     <resource path="~/js/jquery.dataTables.min.js" minifierRef="off" /> 
     <resource path="~/js/jquery.cookie.min.js" minifierRef="off" /> 
     <resource path="~/js/jquery-ui-1.7.2.custom.min.js" minifierRef="off" /> 
     <resource path="~/js/jquery.collapsible-v.2.1.3.js" minifierRef="yui" /> 
     <resource path="~/js/jquery.fileupload.js" minifierRef="yui" /> 
     <resource path="~/js/original/OMNIv2.js" minifierRef="yui" /> 
    </resourceSet> 
    </resourceSets> 
</combres> 

將defaultDebugEnabled設置爲false,即模塊現在將開始運行...內聯Javascript和我的一個ClientRegisterScriptBlocks爆發說'$未定義'。很明顯,jQuery沒有被加載或以某種方式被破壞。如果我真的用defaultDebugEnabled設置爲true來運行這個,組合的JS運行正常,所有的引用都可以工作。有什麼想法爲什麼發生這種情況?日誌沒有顯示任何不尋常的事情。

輸出:

//These are from the master page 
<link rel="stylesheet" type="text/css" href="/combres.axd/siteCss/1/"/> 
<script type="text/javascript" src="/combres.axd/siteJs/a/"></script> 

// This is in my Default.aspx 
<script type="text/javascript" > 
    function pageLoad() { 
    var $NavSlider = $("#NavSlider"); // THIS DOESN'T WORK, $ is undefined 
    } 
</script> 
+0

你的輸出html是什麼樣的? – 2011-01-21 18:14:40

+0

在上面添加了它。 – jlrolin 2011-01-21 18:26:22

回答

2

有趣的是,Combres必須有一些問題。一些JQuery源文件可以工作,而其他的則不行。這歸結於它在某些情況下如何被縮小。 Combres有一些錯誤來解決IMO。

0

Combres遇到問題,因爲它試圖合併和縮小已經縮小的文件。嘗試使用完整的未縮小的JavaScript文件。