Three.js 手机端 touch用法

1、加入监听

 container.addEventListener('touchstart', onDocumentTouchStart, false);
 container.addEventListener('touchmove', onDocumentTouchMove, false);

2、实现监听方法

      function onDocumentTouchStart(event) {

                if (event.touches.length === 1) {

                    var touch2 = event.touches[0];
                    mouse.x = (touch2.pageX / window.innerWidth) * 2 - 1;
                    mouse.y = -(touch2.pageY / window.innerHeight) * 2 + 1;

                }

            }

            function onDocumentTouchMove(event) {

                if (event.touches.length === 1) {

                    event.preventDefault();

                    mouse.x = event.touches[0].pageX - windowHalfX;
                    mouse.y = event.touches[0].pageY - windowHalfY;

                }

 

PS:比较全面的判断手机、pad、PC的方法

 // 判断是在移动端还是在pc端
            var os = function () {
                var ua = navigator.userAgent,
                    isWindowsPhone = /(?:Windows Phone)/.test(ua),
                    isSymbian = /(?:SymbianOS)/.test(ua) || isWindowsPhone,
                    isAndroid = /(?:Android)/.test(ua),
                    isFireFox = /(?:Firefox)/.test(ua),
                    isChrome = /(?:Chrome|CriOS)/.test(ua),
                    isTablet = /(?:iPad|PlayBook)/.test(ua) || (isAndroid && !/(?:Mobile)/.test(ua)) || (isFireFox && /(?:Tablet)/.test(ua)),
                    isPhone = /(?:iPhone)/.test(ua) && !isTablet,
                    isPc = !isPhone && !isAndroid && !isSymbian;
                return {
                    isTablet: isTablet,
                    isPhone: isPhone,
                    isAndroid: isAndroid,
                    isPc: isPc
                };
            }();

 

发布了5 篇原创文章 · 获赞 2 · 访问量 3604
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览