Javascript Three.js和网络工作者的怪异行为
我在three.js应用程序中使用web workers时遇到了一些奇怪的情况。在第一次加载新页面时,它看起来很好 但在重新加载几页(比如20页)之后,只有在web工作人员执行时,才会发生这种情况: 右上角是我的立方体!出于某种原因,它似乎在重新加载20次左右后放大 但是如果我把屏幕的尺寸调整得更小,立方体就会弹回到中间。我检查了一下屏幕的高宽比在立方体会弹回来时是否总是相同的,而不是 此外,如果我继续重新加载页面,它会到达立方体消失的位置,最终屏幕变为空白。但是,然后我在一个新窗口中重新加载页面,一切都恢复正常 起初,我认为这可能与web workers没有正确终止有关,所以我设置了一个Javascript Three.js和网络工作者的怪异行为,javascript,three.js,webgl,web-worker,Javascript,Three.js,Webgl,Web Worker,我在three.js应用程序中使用web workers时遇到了一些奇怪的情况。在第一次加载新页面时,它看起来很好 但在重新加载几页(比如20页)之后,只有在web工作人员执行时,才会发生这种情况: 右上角是我的立方体!出于某种原因,它似乎在重新加载20次左右后放大 但是如果我把屏幕的尺寸调整得更小,立方体就会弹回到中间。我检查了一下屏幕的高宽比在立方体会弹回来时是否总是相同的,而不是 此外,如果我继续重新加载页面,它会到达立方体消失的位置,最终屏幕变为空白。但是,然后我在一个新窗口中重新加
beforeunload
事件处理程序,该处理程序会杀死我所有的workers,但它不起作用。所以我不确定这里发生了什么。救命啊
我使用的是chrome 24,在firefox 18中似乎没有问题。我之前也遇到过这个问题-这是chrome/Webkit中的一个bug。然而,对于Chrome 25 beta版,我再也看不到它了 以下是一些参考资料: