先引入dat.giu.min.js(压缩版)
<script src="js/dat.gui.min.js"></script>
在js中初始化配置
var viewModel = {
emissionRate : 5.0,
gravity : 0.0,
miniParticleLife : 1.0,
maxiParticleLife : 1.0,
fly:true
}
window.onload = function() {
gui = new dat.GUI();
gui.add(viewModel, 'emissionRate',0,100);
gui.add(viewModel, 'particleSize',2 ,60);
gui.add(viewModel, 'miniParticleLife',0.1,29.1);
gui.add(viewModel, 'maxiParticleLife',0.1,29.1);
//复选框按钮
gui.add(viewModel, 'fly')
}
当数值变化时赋值给对象属性
onchange 事件会在域的内容改变时发生
window.onload = function() {
var gui = new dat.GUI();
gui.add(viewModel, 'emissionRate',0,100).onChange(function (val) {
//操作
_this.particleSystem.emissionRate = parseFloat(val);
});
gui.add(viewModel, 'particleSize',2 ,60).onChange(function (val) {
_this.particleSystem.particleSize = parseFloat(val);
});
gui.add(viewModel, 'miniParticleLife',0.1,29.1 ).onChange(function (val) {
_this.particleSystem.miniParticleLife = parseFloat(val);
});
gui.add(viewModel, 'maxiParticleLife',0.1,29.1 ).onChange(function (val) {
_this.particleSystem.maxiParticleLife = parseFloat(val);
});
}
这里就可以完成了。
但我在class类的方法中不起作用(在别的地方可以),解决办法是:
var oddοnlοad=window.onload;
oddοnlοad();
?