Javascript 如何在JS/jQuery中创建不同的交互模式?
我试图创建一个用户界面,允许人们更改元素的交互类型 例如,在一种模式下,元素应响应单击事件,在另一种模式下,元素应仅响应拖动事件。在另一种模式中,交互类型可能是其他类型 起初我打算使用Javascript 如何在JS/jQuery中创建不同的交互模式?,javascript,jquery,user-interface,Javascript,Jquery,User Interface,我试图创建一个用户界面,允许人们更改元素的交互类型 例如,在一种模式下,元素应响应单击事件,在另一种模式下,元素应仅响应拖动事件。在另一种模式中,交互类型可能是其他类型 起初我打算使用开关语句,但后来意识到这不会引起变化 我尝试过使用函数,但当模式改变时,它会对这两种类型的交互做出响应,在本例中是“单击”和“拖动”。我猜想这可能与调用同一函数的多个实例有关 我可以这样做,但我的方法会很混乱。我在寻找更清晰的答案 理想情况下,代码类似于(简单性方面) 我意识到AngularJS有$watch,这可
开关语句,但后来意识到这不会引起变化
我尝试过使用函数,但当模式改变时,它会对这两种类型的交互做出响应,在本例中是“单击”和“拖动”。我猜想这可能与调用同一函数的多个实例有关
我可以这样做,但我的方法会很混乱。我在寻找更清晰的答案
理想情况下,代码类似于(简单性方面)
我意识到AngularJS有$watch
,这可能对这个项目很有用,但是我已经为这个项目承诺了jQuery。真不敢相信它有多简单!在函数中,我只需要调用jQuery的.off()
命令来删除该特定元素以前的所有事件侦听器
switch(modeType) {
case 'click' :
//Click stuff here
break;
case 'drag' :
//Drag stuff here
break;
default :
//Something else here
}