jQuery - 函数内部变量的声明停止解析

时间:2014-09-30 14:15:28

标签: javascript jquery web

我遇到了一个我无法弄清楚的错误。在函数中声明变量会导致脚本的其余部分无法执行。以下面的工作示例为例:

http://jsfiddle.net/nkcokmaq/1/

但是,如果我添加:

var square_size = $('#grid_container').width()/input - 2;

下:

var makeGrid = function(opt){
    if (opt >= 1 && opt <= 128){
        ...

函数makeGrid下的条件if语句不会执行(但else语句仍然会执行) - 如下面的jsfiddle所示:

http://jsfiddle.net/nkcokmaq/2/

任何指针?

2 个答案:

答案 0 :(得分:0)

Here是您工作的第一个例子。有js错误阻止它执行。

从按钮中删除onclick处理程序

<button id="b1">Black</button>
<button id="b2">Multicoloured</button>

添加jquery链接并添加点击处理。

$("#b1").click(function(e){clickButton(1)});
$("#b2").click(function(e){clickButton(2)});

与第二小提琴相同。添加jq支持,在input函数中定义makeGrid变量。

答案 1 :(得分:0)

变量input尚未定义。您可以为input分配值,例如:

   var input = 1;

或者使用其他变量进行计算,例如opt

   var square_size = $('#gridContainer').width() / opt - 2;

http://jsfiddle.net/nkcokmaq/3/

相关问题