在循环中创建函数维护索引值

时间:2014-07-02 17:55:39

标签: javascript loops dynamic-programming

我有一个对象可以选择在某个事件上创建一个函数,我想用循环创建这个对象的许多实例:

var dragging;
var dragObj = new Array();
for(i=0; i<20; i++){
   dragObj[i] = new Draggy('btn_id_'+i, {
        restrictY:false, 
        restrictX:false,
        onChange: function(){
            dragging = i;
            console.log(dragObj[i].position);
        }
    }
}

基本上我选择带有id&#39; btn_id _&#39; + i的元素来获取draggy对象,这允许拖动元素和onChange(拖动)我可以执行一个函数,在这种情况下我只想跟踪在控制台中拖动元素的位置,并将正在拖动的元素的索引保存到变量中。

自{&#34; onChange&#34;&#34; i&#34;将在循环完成的某个时刻执行,onChange等于我循环的最后一个索引(20)。

如何执行允许内部功能的循环&#34; i&#34;在循环创建函数时保持{{1}}的值。

感谢。

0 个答案:

没有答案