2011-01-21 64 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文件。