美好的一天,我正在尝试CurlJS并且已经成功完成了大多数项目。但是,出于某种原因,我仍然无法使用CurlJS加载CSS文件。
Firebug(网络标签)显示他们的css.js
插件正在加载:我假设它用于加载CSS文件。
Firebug(控制台选项卡)显示来自curl.js
文件的“a.load不是函数”。
define.amd.curl
的版本号为:“0.6.2”
我的问题是:为什么CSS文件没有加载?
我的代码看起来像:
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title></title>
<script type="text/javascript">
curl =
{
baseUrl: '.',
paths:
{
curl: 'Scripts/Curl'
//,'css!':'Style' //<-- I even tried this with no success
},
pluginPath: 'Scripts/Curl/curl/plugin'
};
</script>
<script src="Scripts/Curl/curl.js" type="text/javascript"></script>
<script type="text/javascript">
curl(['css!Style/Test.css'])
.then(
function (css) {
if (css)
alert("It Works!");
},
function (error) {
alert("It failed!");
});
</script>
</head>
<body>
<form id="form1" runat="server">
<div class="test" style="border: 1px solid black; text-align: center; width: 400px;">
If the CSS loads this text will be RED.
</div>
</form>
</body>
</html>
CONSOLE TAB:
NET TAB:
更新:
我'可以'使用以下JavaScript来加载给定模块的CSS依赖项,但我宁愿使用Curls本机功能。
var head = document.getElementsByTagName('head')[0];
var files = ['/Style/Test.css']; //<-- my list of files
for (var i = 0, l = files.length; i < l; i++) {
var link = document.createElement('link');
link.href = files[i];
link.rel = "stylesheet";
link.type = "text/css";
head.appendChild(link);
}
答案 0 :(得分:1)
我发现您的代码段存在一些问题:
在给出的代码片段中,我无法解释“a.load不是函数”消息。还有一些我无法看到的事情。
[更新发布屏幕截图后:] 在Firebug屏幕截图中显示的一小段代码看起来像css.js文件已被最小化/压缩。它并不意味着单独最小化。使用curl的make实用程序用css构建curl版本!插件烘烤,或抓住已经烧入CSS的curl / dist版本!插件模块。这应该可以解决问题。
答案 1 :(得分:0)
我不熟悉CurlJS,但它可能与CSS文件的相对路径有关。
尝试更换:
curl(['css!Style/Test.css'])
使用:
curl(['css!./Style/Test.css'])
或:
curl(['css!../../Style/Test.css'])
答案 2 :(得分:0)
使用另一个curl.js文件... kitchen-sink版本包含插件,其他版本没有。
https://github.com/cujojs/curl/tree/master/dist/curl-kitchen-sink