1

有关代码,请在此处查看我的小提琴:http: //jsfiddle.net/6fwbS/5/

单击增加按钮时,我无法更改全局变量 a、b 或 c。即使我已经在任何函数之外声明了它们,但这些函数似乎并不知道这些变量的值。在访问要在函数中使用的全局变量之前,我也遇到过类似的问题。有人可以告诉我我在这里做错了什么吗?

4

3 回答 3

1

我不确定它应该如何工作,但我猜你忘记增加 a. 也许你需要这个:

if (a >= imgs)
    a = 0;
else
    a++;
于 2012-04-21T03:36:08.287 回答
0

您已经在函数imgs内声明了变量$("#thumb_slider").children().each(function(index, element) {,因此您slide_img_left()无权访问它,因为它已在该函数的本地范围内声明。尝试这个:

http://jsfiddle.net/6fwbS/14/

于 2012-04-21T03:44:29.303 回答
0

您的变量没有改变,因为您的代码没有改变它们。a 最初设置为 0,然后在 document.ready 中增加 1 (a++)。在那之后永远不会改变。之后 imgs 永远不会改变。所以 b 和 c,因为它们依赖于 a 的值才能改变,所以永远不会改变。你想在这里完成什么?也许你的问题的答案是:什么时候应该改变?

编辑:也许这就是您要对变量进行的操作?http://jsfiddle.net/6fwbS/16/

于 2012-04-21T03:38:05.053 回答