Three.js中的文字叠加会扰乱拖动

时间:2016-04-13 12:43:14

标签: javascript three.js

根据Github(https://github.com/mrdoob/three.js/issues/1321)和Stakoverflow(Dynamically create 2D text in three.js)上的建议,我选择在HTML div中叠加文字。

我遇到的问题是当用户旋转场景并且光标经过任何div时,拖动停止。当光标在文本div的另一侧继续时,拖动操作不会恢复。这导致拖动动作神秘地停止,只能通过释放鼠标按钮并重新应用来恢复。

我正在谈论的例子是在这个页面上:http://www.intmath.com/vectors/3d-space-interactive-applet.php

我正在使用带有controls = new THREE.OrbitControls(camera, renderer.domElement);

的库存标准OrbitControls.js

我试过了:

(1)从div中检测mouseout并设置controls.enabled true不起作用。此外,切换controls.enabled = false肯定会禁用控件,但我无法在mouseout上重新启动它们。

(2)模拟mouseup(在div上方)然后mousedown来自div的mouseout - 也没有运气。

(3)试图隐藏mouseover上的div,但当时已经太晚了 - 拖动动作已经停止了。

(4)禁用高亮显示div中的文本 - 无变化

拖动div后可以重新激活拖动动作,如果是这样,怎么办?

此致

1 个答案:

答案 0 :(得分:0)

在标签上设置CSS规则pointer-events: none