Javascript 如果我有两个鼠标滚轮侦听器,如何确保一个在另一个之后?

Javascript 如果我有两个鼠标滚轮侦听器,如何确保一个在另一个之后?,javascript,dom-events,mousewheel,Javascript,Dom Events,Mousewheel,我正在开发一个使用Three.js的应用程序。我已经加入了[fantastic]oribitalControl.js来帮助场景导航。它有以下代码将其功能附加到鼠标滚轮: this.domElement.addEventListener( 'mousewheel', onMouseWheel, false ); this.domElement.addEventListener( 'DOMMouseScroll', onMouseWheel, false ); // firefox 在我的应用程序

我正在开发一个使用Three.js的应用程序。我已经加入了[fantastic]oribitalControl.js来帮助场景导航。它有以下代码将其功能附加到鼠标滚轮:

this.domElement.addEventListener( 'mousewheel', onMouseWheel, false );
this.domElement.addEventListener( 'DOMMouseScroll', onMouseWheel, false ); // firefox
在我的应用程序的其他地方(在一个单独的文件中),我有自己的
mouseweel
listener。我将其附加到事件中,如下所示:

this.canvas.onmousewheel = this.onMouseWheel.bind(this);
问题是,我的
mouseweel
函数告诉渲染器渲染帧,因为场景中的某些内容已更改。然后,在重新渲染帧后,
OrbitalControl
mousewheel
功能更改相机的位置。下一次我更改某些内容时,我得到了一个恼人的“缩放”,因为我的侦听器没有从
OrbitalControl
侦听器中拾取最后一个小更改

有没有一种方法可以强制我的
onmouseheel()
函数始终排在最后


编辑:由于应用程序的架构,
OrbitalControl
对我的另一个
mousewheel
功能一无所知。另外,我的
mouseweel
函数不能对
OrbitalControls

的实现做出任何假设js和jquery都是同步的。您的目标可以通过回调函数来实现。回调是在第一个函数完全执行后调用的。谷歌回调函数,你会发现很多例子

你能更具体一点吗?回调函数会去哪里?谁会叫它?$(选择器)。隐藏(速度,回调);看这里,这是一个例子,第一个隐藏函数将在选择器上执行,隐藏函数完成后(spee是隐藏的参数)调用函数。试着用这个。因为我是通过手机上网的,所以我无法解析你的代码。请尝试我的例子并尝试实现