【问题标题】:Use javascript while loop to make variables?使用javascript while循环来制作变量?
【发布时间】:2012-02-14 15:45:31
【问题描述】:

有关于这个的话题,但没有真正指出我的问题。

我正在使用 iScroll,一个 jquery 插件。对于我页面上的每个滚动框,我需要分配一个唯一变量。在这种情况下,它将是 myScroll1、myScroll2 等。

为了使其易于编辑,我希望自动生成变量,并给出滚动条所在的 div 的数量。所以,假设我有 2 个带有这些滚动条的 div。我使用 .size() 方法来计算 div。然后我想要一个while循环来制作变量。我现在有这样的东西:

var i = 0;
var item_number = $(".portfolio_item").size();

var myScroll = [];
while( i < item_number ) {
    myScroll[i];
    i++;
}

Sooo,我不想在 HTML 中生成任何东西,只需要变量。它们必须成为 myScroll1、myScroll2、myScroll3。取决于 .portfolio_item div 的数量。

我已经用 php 尝试过这个,这对我来说更容易一些。但!!我不能在 php 中使用 javascript 变量。所以我无法计算 .portfolio_item div 的数量 :( 谢谢! :)

【问题讨论】:

  • 您是否要创建全局变量(如果是,请重新考虑;这是不好的做法)?为什么每个项目单独一个?数组会好很多!

标签: javascript jquery variables loops while-loop


【解决方案1】:

不好的做法,但你可以这样做

var i = 0;
var item_number = $(".portfolio_item").size();

while( i < item_number ) {
    window["myScroll" + i] = "foo" + i;
    i++;
}

alert(myScroll0);

更好的做法是使用命名空间并添加到其中。

var i = 0;
var item_number = $(".portfolio_item").size();

var foo = {};
while( i < item_number ) {
    foo["myScroll" + i] = "foo" + i;
    i++;
}

alert(foo.myScroll0);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-11
    • 1970-01-01
    • 2013-03-26
    • 2013-10-22
    • 2019-10-09
    • 2022-07-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多