根据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);
我试过了:
(1)从div中检测mouseout
并设置controls.enabled true
不起作用。此外,切换controls.enabled = false
肯定会禁用控件,但我无法在mouseout
上重新启动它们。
(2)模拟mouseup
(在div上方)然后mousedown
来自div的mouseout
- 也没有运气。
(3)试图隐藏mouseover
上的div,但当时已经太晚了 - 拖动动作已经停止了。
(4)禁用高亮显示div中的文本 - 无变化
拖动div后可以重新激活拖动动作,如果是这样,怎么办?
此致
答案 0 :(得分:0)
在标签上设置CSS规则pointer-events: none
。