Использовать Javascript while цикл для создания переменных? - PullRequest
1 голос
/ 20 января 2012

Есть темы по этому поводу, но они не указывают на мою проблему.

Я использую iScroll, плагин jquery.Для каждой прокрутки на моей странице мне нужно назначить уникальную переменную.В этом случае это будут myScroll1, myScroll2 и т. Д.

Чтобы сделать его легко редактируемым, я хочу, чтобы переменные генерировались автоматически с указанием количества делений в которых находятся полосы прокрутки. Итак, допустим, у меня есть 2div с этими полосами прокрутки.Я использую метод .size () для подсчета div.Затем я хочу цикл while для создания переменных.Теперь у меня есть что-то вроде этого:

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

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

Ооо, я не хочу ничего генерируется в HTML, только переменные.Они должны стать myScroll1, myScroll2, myScroll3.В зависимости от количества делений .portfolio_item.

Я пробовал это с php, это немного проще для меня.Но!!Я не могу использовать переменные JavaScript в PHP.Так что я не могу посчитать количество div .portfolio_item :( Спасибо! :))

1 Ответ

2 голосов
/ 20 января 2012

Плохая практика, но вы можете сделать это

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);
...