循环中的JQuery变量通过名称计算召回......可能吗?

时间:2011-10-17 15:07:59

标签: jquery variables loops

以下循环为每个具有类.scrollable

的div元素生成一个变量
var scrolls[];

$('.scrollable').each(function(){
                            this.id = 'scrollp' + (++orderit);
                            scrolls[ 'myScroll' + this.id ] = this.id;
                        });

问题是我需要稍后再次调用它们,我们不知道在哪里分配了哪个ID。我试过这个。

setTimeout(function () {
                  $('.scrollable').each(function(){
                        scrolls[ 'myScroll' + $(this).attr('id')]_update();
                  });
                  }, 2500);

但变量未知。 FIREBUG ::在声明之前丢失。我认为它不能像这样解决变量名,但不知道如何修复它。

4 个答案:

答案 0 :(得分:0)

使用

$('.scrollable').each(function(){
    $(this).tinyscrollbar_update(); 
});

答案 1 :(得分:0)

我想这个:

setTimeout(function () {
              $('.scrollable').each(function(){
                    scrolls[ 'myScroll' + $(this).attr('id')]_update();
              });
              }, 2500);

应该是:

setTimeout(function () {
              $('.scrollable').each(function(){
                    scrolls[ 'myScroll' + $(this).attr('id')].tinyscrollbar_update();
              });
              }, 2500);

答案 2 :(得分:0)

$.each( $( '.scrollable' ), function( index, element ){
    $( element ).tinyscrollbar_update(); 
});

这有用吗?

答案 3 :(得分:0)

这对我有用:

$('.scrollable').tinyscrollbar().tinyscrollbar_update();