我正在尝试使用head.js。得到一些奇怪的行动。下面可以使用,但是如果我在正文中的脚本中注释掉“警报(‘hi’)”,那么head.js似乎就不能工作了。
因此,我尝试注释掉所有的head.js内容,并为每个JS库使用一个标准标记。它的工作就像预期的那样。但是当使用Head.js时,如果“警报(‘hi’)”被注释掉,它就会失败。显然,对于生产,我希望删除此警报,但随后收到以下错误消息:"ReferenceError:$未定义“.?但是,如果我取消对警报的注释,那么所有这些都能正常工作,并从DB ?中提取数据?
有什么想法吗?
<head>
<title></title>
<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/headjs/0.99/head.min.js">
</script>
<script type="text/javascript">
head.js(
/* root level */
"http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js",
"http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js",
"/assets/scripts/external/_references.js",
"../../assets/scripts/external/jquery.unobtrusive-ajax.min.js",
"../../assets/scripts/external/jquery.validate-vsdoc.js",
"../../assets/scripts/external/jquery.validate.min.js",
"../../assets/scripts/external/jquery.validate.unobtrusive.min.js",
"../../assets/scripts/external/knockout-2.3.0.js",
"../../assets/scripts/external/modernizr-2.6.2.js",
"/assets/css/Index.css",
"assets/css/OrangeCounty.css"
);
</script>
</head>
<body>
<div id="list"></div>
<script>
alert('hi');
$.getJSON("http://localhost/webapi/api/ccc", function (result) {
$.each(result, function (i, field) {
$("div").append(field.Code + " " + field.Country1 + "<br/>");
});
});
</script>
</body>发布于 2013-09-09 01:16:53
alert()延迟了脚本的执行,足以让jQuery实际加载。Head.js并行加载脚本,不阻塞脚本,因此您必须在回调时使用它:
head.js(..., function() {
// Your code
});或者将该代码放入一个单独的脚本文件中,并将其放在jQuery之后的head.js调用中。
https://stackoverflow.com/questions/18690269
复制相似问题