首页 > 代码库 > 鼠标交互插件threex.domevents介绍

鼠标交互插件threex.domevents介绍

    threex.domevents是一个three.js的扩展库,支持3D场景的交互。和我们操作DOM树的事件相似,名称都是一样的。所以使用起来非常方便。另外他也提供了连接操作。单击网格可实现跳转功能。

    如果仅仅使用Dom事件,需要引入:

<script src=http://www.mamicode.com/‘threex.domevents.js‘></script>

    如果需要使用链接跳转,还需要引入:

<script src="http://www.mamicode.com/threex.linkify.js"></script>

    不管是使用事件还是跳转,都得创建DomEvents对象:

var domEvents = new THREEx.DomEvents(camera, webGLRenderer.domElement);
    THREEx.DomEvents.eventNames是一个包含了所有支持的事件的名称集合。所有我们可以像下面这样输出所有事件操作的日志:
THREEx.DomEvents.eventNames.forEach(function(eventName){                if(eventName === "mousemove") return;                domEvents.addEventListener(sphereMesh, eventName, function(event){                    var domElement = document.querySelector("#log");                    domElement.innerHTML =  event.type + "<br/>" + domElement.innerHTML ;                }, false);            });

    我们给sphereMesh网格注册了所有DomEvents支持的事件。由于mousemove触发太频繁,所以忽略了它。

    如何使用链接?代码相当简单:

THREEx.Linkify(domEvents, sphereMesh, "http://www.cnblogs.com/w_wanglei");

    最后附上domEvents的源代码下载地址:https://github.com/jeromeetienne/threex.domevents。

鼠标交互插件threex.domevents介绍