码迷,mamicode.com
首页 > 微信 > 详细

项目总结-微信游戏

时间:2015-08-06 11:02:30      阅读:293      评论:0      收藏:0      [点我收藏+]

标签:

第一次做微信游戏,还是蛮好玩了,项目还没完成,边做边在这记录下遇到的问题及解决方案。

1. 游戏中带有快速向下滑动页面的功能,但是移动端自带会有下滑效果,这样就会引起冲突。

    解决方案:

  禁用默认的移动事件

document.addEventListener(‘touchmove‘, function (event) {
       event.preventDefault();
})

  

2. 计算滚动条位置错误。起初是使用“left”参数来设定滚动条的位置,且值为百分比。在PC端,可以正常识别出滚动条的居左位置,然而在移动端不行。

    解决方案:

  将“left”改为“margin-left”。

 

3. 若滑动次数过多,页面的动画效果会卡顿。

    解决方案:

  每次滑动会添加添加一个新的<img>标签并加以动画效果,所以创建完新的后延迟一会儿再删除老的就可以了。但是千万不能一创建完新的就删除,这样在快速滑动时,会有动画断层,第一个正在运动的img还没执行完就被干掉了。

 

4. 向下滑动一定距离后才能认定为触发成功,但是时而有效时而无效,有时单点也会触发。

    解决方案:

  在touchstart的时候重置下触点的结束位置的值。

        var touchTop = 0; //触点的起始位置
        var endTop = 0;  //触点的结束位置 
        var obj = document.getElementById(‘cups‘);
        obj.addEventListener(‘touchstart‘, function (event) {
            if (event.targetTouches.length == 1) {
                var touch = event.targetTouches[0];
                touchTop = touch.pageY;
                endTop = 0;
                }
            }
        }, false);
        obj.addEventListener(‘touchmove‘, function (event) {
            if (event.targetTouches.length == 1) {
                var touch = event.targetTouches[0];
                endTop = touch.pageY;
            }
        }, false);
        obj.addEventListener(‘touchend‘, function (event) {
            if ((endTop - touchTop) > 60) {
               ...
            }
        }, false);        

  

项目总结-微信游戏

标签:

原文地址:http://www.cnblogs.com/violetye/p/4704547.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!