我想用Firebug调试一些脚本,(因为我在浏览器窗口中看不到任何内容)但是当我点击Firefox中的脚本选项卡时它会给我错误信息:
如果标签具有“type”属性,则它应该等于“text / javascript”或“application / javascript”。脚本也必须是可解析的(语法正确)。
我做错了什么?
这是我的代码:
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<script src="jquery-1.7.1.js"></script>
<script type="text/javascript">
$(function() {
/* fix: “close” the value of i inside createFunction, so it won't change */
var createFunction = function(i) {
return function() { alert(i); };
};
for (var i=0; i<5; i++) {
$('p').appendTo('body').on("click", createFunction(i));
}
})();
</script>
</body>
</html>
答案 0 :(得分:4)
你必须省略最后一个括号,我想代码应该在dom上运行吗?
<script type="text/javascript">
$(function() {
/* fix: “close” the value of i inside createFunction, so it won't change */
var createFunction = function(i) {
return function() { alert(i); };
};
for (var i=0; i<5; i++) {
$('<p>').appendTo('body').on("click", createFunction(i));
}
});
</script>
See here了解如何使用jquery在dom上运行代码。
答案 1 :(得分:1)
在})
之后删除括号:
$(function() {
/* fix: “close” the value of i inside createFunction, so it won't change */
var createFunction = function(i) {
return function() { alert(i); };
};
for (var i=0; i<5; i++) {
$('p').appendTo('body').on("click", createFunction(i));
}
}); //here is the modification
答案 2 :(得分:1)
在我的案例中,我在其他标签中打开了firebug,所以它向我显示了这个错误。