Для тех, кто знает, как использовать 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>