博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
做了一个小游戏,结项目,数数坑(animate,移动端长按出现菜单,touchmove,禁止微信上下滑屏)...
阅读量:7065 次
发布时间:2019-06-28

本文共 1236 字,大约阅读时间需要 4 分钟。

这是一个微信端的,投篮小游戏。

游戏规则如下: 

  点击开始,进入游戏,按住右下角红色按钮控制投篮力度,3次进球以后游戏难度将会升级。45秒内您的进球数将会计入排行榜,最终排行榜上的名次可以获得相应奖励,快来投篮冲榜领福利吧。

一、动画效果

  做微信项目,相信大家和我一样,已经习惯了放弃使用jQuery,转而使用zepto。但是zepto并没有集成animate()方法。因此若想使用动画,用不想做兼容处理,最高效的方法是重拾jQuery。  

$(selector).animate(styles,speed,easing,callback)  详见:http://www.w3school.com.cn/jquery/effect_animate.asp

  再者,jQuery的animate()方法并没有集成所有的贝塞尔曲线(说的是animate的easing函数),W3C官网上显示,只有“swing”,“linear”两种,

他们的位移时间图如下图所示:

      

 

注意:speed是完成一个运动周期的用时,而并非速度,默认值1000 单位ms,而对于easing函数来说,默认值是“swing”(字符串类型),并非匀速直线运动linear。 二、禁除安卓手机的长按出现的菜单   css:

    -webkit-touch-callout:none;

    -webkit-user-select: none;

使用上面的css可以实现禁除 “复制”和“保存到手机”菜单的出现,但无法禁除“在浏览器中打开”。

  实现禁除“在浏览器中打开”,可使用下面的代码。实际上,该代码是在PC端禁除了右击菜单的出现,在移动端禁除了长按菜单的出现。

  js:

  document.addEventListener("contextmenu", function(event){

    event.preventDefault();
    return false;
  },false)

 三、禁除微信端网页上下滑动

  微信端的小游戏本身是全屏的,但是,山下滑动网页时会出现黑框。下面代码可以防止上下滑动出现黑框:

  document.addEventListener("touchmove",function(e){

    e.preventDefault();
    e.stopPropagation();
  },false);

 

 四、禁除微信端网页滑动后,实现排行榜的滑动

   微信一屏的长度有限,而需要展示排行的前99人。想要展示,又必须用到滑屏事件,但是在上面我们已经禁掉了touchmove事件。

在这块我使用了swiper.js,完美解决了问题。

但又一点需要注意,需要在获取到数据之后,再进行对swiper的初始化。

 

转载于:https://www.cnblogs.com/grove009/p/7324801.html

你可能感兴趣的文章
编译安装zabbix
查看>>
【连载】物联网全栈教程-从云端到设备(十二)---最简单的单片机上云方法!...
查看>>
如何自学编程?学习方法在这里!
查看>>
springboot web应用 jar 启动 ant脚本
查看>>
SolrCould 集群搭建
查看>>
IDEA Git版本回滚提交方式
查看>>
tomcat中同时启动两个项目出现内存不足的错误提示解决办法
查看>>
ssm框架开发过程中遇到的一错误以及解决问题提示
查看>>
树的遍历
查看>>
11.24 静态元素过期时间
查看>>
20.34 批量远程执行命令
查看>>
mongodb嵌套文档结构设计
查看>>
导入项目后遇到页面报错如何解决
查看>>
有哪些新手程序员不知道的小技巧?
查看>>
SSM框架
查看>>
10.1 使用w查看系统负载 10.2 vmstat命令 10.3 top命令 10.4 sar命令 10.5 nload命令
查看>>
vue 之 .sync 修饰符
查看>>
SpringBoot就是这么简单
查看>>
Android环境下hanlp汉字转拼音功能的使用介绍
查看>>
Slack将新增更多功能免写程序就能自动排工作流程
查看>>