我正在组合插件文件以减少HTTP请求的数量。删除了最小化以进行调试。
组合的脚本文件是:
test.js:
(function($){
$.fn.extend({
GetNewDiv: function(){
return $('<div>Testing new div</div');
}
});
})(jQuery)
// ;jQuery.noConflict();
(function($){
$.fn.extend({
GetNewSpan: function(){
return $('<span class="test">Testing new div</span>');
}
});
})(jQuery)
<html>
<head>
<script type="text/javascript" src="jquery-1.4.2.js"></script>
<script src="test.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
alert('document ready');
});
</script>
</head>
<body>
test message
</body>
在Firefox中打开文件会在Firebug中显示此错误
function ($) {$.fn.extend({GetNewDiv: function () {return $("<div>Testing new div</div");}});}(jQuery) is not a function
file:///C://js/test.js
Line 10
在2插件之间添加“jQuery.noConflict();”有帮助,但随后错误更改为 $不是函数
任何想法有什么不对?将多个.js文件合并到一个文件中的正确方法是什么?
由于 ABHI
答案 0 :(得分:11)
你只需要在文件之间加一个分号。这些......中的每一个都是一个JavaScript表达式片段。没有分号,解析器认为表达式继续。
在JavaScript中,分号有时是可选的,但是当它们不是时,它们就不是。