jquery鼠标手势/ btn排队

时间:2010-02-03 08:27:47

标签: jquery plugins

我正在使用jquery超级手势http://www.evanbot.com/article/super-gestures-jquery-plugin/22作为网站上的界面。

我希望我使用的每个手势都分配了一系列动作,例如:

  • 当用户执行一次移动(比如向左移动鼠标)时,它会在div中淡入,并提示用户执行其他操作

  • 当执行相同的动作时,它会在另一个div中消失,忘记它为该动作执行的最后一个动作。

这可能会持续下去,直到该特定动作的动作用完为止。然后我会将它应用于上,下,左,右,圆,之字形等一系列鼠标移动

我的问题是,如何让jQuery以这种方式完成一系列操作?

非常感谢提前。

1 个答案:

答案 0 :(得分:0)

您可以使用javascript数组来保存要执行的操作队列

var queue = [];

queue.push(function() { 
   alert('hello world') 
}); 
queue.push(function() {
   alert('goodbye cruel world');
});

然后,当执行手势时,您可以使用

...
callback: function(gesture) {
   if(0 == queue.length) {
       ...
   } else if('circle-clockwise' == gesture) {
       var fn = queue.shift(); // get the first element in queue
       fn();
   }  
   ...
} 
...

调用队列中的下一个动作。

注意:您可以将函数调用编写为queue.shift()();如果你想缩短的话。