2011-07-11 41 views
0

我正面临着一个小问题。在一个js文件中,我发射这样的事件:Ti.App.fireEvent('foo', {name:col});事件监听器函数进入循环?请帮忙

在其他文件中,我正在收听该活动。

tableimg.addEventListener('click',function(e){ 
     if(e.source.backgroundColor==''){CreateTableWindow(1,e.source.id);} 
     else{ 
      changeTheDinerStatus(); 
      Ti.App.addEventListener('foo', function(data) 
            { 
            var ke=data.name; 
            alert(e.source.id+'@@@'+ke); 
            e.source.backgroundColor = ke; 
            });             
            } 
            }); 

所以这里的问题是,文都给我正在射击在听众的功能正在重演事件.....

这样

文点击首次它运行once..1 @@@#FFF 文第二表被点击它进入
1 @@@#AAA 2 @@@第三次#AAA 1 @@@#BBB 2 @ @@#BBB 3 @@@#BBB

此这样下去了所有的时间....

回答

1

我看不出在我面前你的DOM结构,但我认为,主要的问题是,你添加一个事件监听器每次点击。 你不应该这样做。 如果您需要通过此方式解决问题,则应删除现有听众

element.removeEventListener('foo',spyOnUser,false)