我从X3DOM开始,试图找到一种方法来显示存储在客户端数据库中的X3DOM对象的属性数据。查询数据并获取3D对象并不是那么困难,但是当点击该对象时,在弹出窗口中获取其属性数据时,我现在陷入困境。如果有人能帮助我,我将非常感激。我试过寻找这个教程,但找不到任何。如果有人有他们认为有用的链接,请提供链接。我自己也在搜索相关材料。提前感谢你。
答案 0 :(得分:0)
将侦听器附加到X3D对象的一种方法是设置其事件属性,例如onclick
属性(或onmouseover
,onmouseout
...)。
您可以在服务器的服务页面中,也可以动态地执行此操作。
假设你有一个形状:
<shape onclick="return window.MyComponent && typeof window.MyComponent.showData === 'function' ? MyComponent.showData(this) : true;">…</shape>
和JS组件:
;(function(root) {
"use strict";
root.MyComponent = {
showData: function(shape) {
/* - do your data retrieval here
- in case you have jQuery: $(shape).data()
- there you also decide what your click handler returns
to keep event propagation or not */
}
}
})(this);
单击形状将触发MyComponent.showData(this)
,其中this
为形状,您将能够在组件中使用此元素及其属性。
X3DOM开发人员可能添加了事件侦听器,而无需直接处理属性。