我现在正在玩VRML,不是通过诚实选择而是通过Web 3D上的项目。
我正在尝试在VRML中制作一个触摸传感器,它将在网页中显示和隐藏Div。我尝试使用
编写一个小脚本browser.loadURL( '的javascript:someFunction()');
尝试测试一下。
javascript永远不会被调用,但是我知道我的触摸传感器是正常的,因为我试图使用某些功能(例如,如果我拼写'浏览器'错误)它会引发错误。
也许这只是现代浏览器不支持的?
非常感谢任何帮助和建议。
DEF alertScript Script {
eventIn SFTime make_alert
url [ "javascript:
function make_alert (value) {
Browser.loadURL('javascript:alert()');
}
" ]
}
ROUTE touchBack.touchTime TO alertScript.make_alert
答案 0 :(得分:1)
他们只想要经典的VRML还是X3D? (X3D是VRML当前版本的名称)。
如果您被允许使用X3D(我不明白为什么不这样做),您可以使用{{3>} WebGL 引擎,您甚至可以在作业中获得额外积分:)
这是一个在点击3D球体时隐藏div的示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Touchsensor in X3DOM</title>
<link href="x3dom.css" rel="stylesheet" />
<style>
#myDiv {
color: blue;
margin: 20px 0;
}
x3d {
display: block;
width: 600px;
height: 400px;
background: #EEEEEE;
border: none;
}
</style>
</head>
<body>
<div id="myDiv">
Click the sphere to hide this div
</div>
<x3d>
<Scene>
<Shape id="mySphere">
<Appearance>
<Material diffuseColor="0 1 0" />
</Appearance>
<Sphere/>
</Shape>
</Scene>
</x3d>
<script src="x3dom.js"></script>
<script>
(function() {
document.getElementById('mySphere').onclick = function(){
document.getElementById('myDiv').style.display = "none";
};
})();
</script>
</body>
</html>
顺便说一句,X3D是HTML5规范推荐的3D技术,它根本不死: - )