对于使用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>

最佳答案

有趣的是,Combres必须遇到一些问题。一些JQuery源文件可以工作,而其他则不能。它取决于在某些情况下如何将其缩小。 Combres有一些错误可以解决IMO。

07-24 17:44