圣诞、元旦要来了,公司以往基本每个月至少要搞一两款手机小游戏来宣传产品,这次也不例外!!

之前做过,按压柚子、许愿、吃柚子等等小游戏,这次是做个那种 气球向上飘动,戳破气球,随机获取奖品。如下图:

手机端和PC端都有做,其中比较麻烦的就是随机生成各种颜色的气球,向上飘动。位置、大小、颜色都是随机的。。

我就封装成JQuery插件。。方便调用。。

吐槽一下,这种游戏比较适合手机端,PC端体验不好,而且根据统计PC端基本没人玩;但是没办法,老大们说PC端、移动端都要做。。那咱搞起呗!!!

PC版:http://www.uzise.com/topic-balloon

移动版:http://mobile.uzise.com/topic-balloon

或者微信扫描进入:

  

PS:现在只是向上飘动,可以扩展一下,比如左右飘动,向下飘动,用于气泡、下雪??等等。。抽空再把这插件扩展一下。。

  1. /**
  2. * 气球或者泡泡向上飘动
  3. * $(".box").fly({
  4. * photos: ["images/red.png", "images/yellow.jpg"]
  5. * });
  6. * Created by 赵欢磊 on 2014/12/10
  7. * http://www.cnblogs.com/huanlei/
  8. */
  9.  
  10. ;(function($) {
  11. $.fn.extend({
  12. fly: function(options) {
  13. options = $.extend({
  14. minSize: , //气球最小尺寸
  15. maxSize: , //气球最大尺寸
  16. interval: , //气球生成时间间隔,数值越小气球越多
  17. photos: [] //气球一张或多张图片,数组
  18. }, options);
  19.  
  20. var timer,
  21. box = $(this),
  22. boxHeight = box.height(),
  23. boxWidth = box.width(),
  24. len = options.photos.length,
  25. photo = $("<img/>").css({"position": "absolute"});
  26. box.css({"position": "relative", "overflow": "hidden"});
  27. if (!len) return; //至少一张图片,否则不执行下面的
  28. timer = setInterval(function() {
  29. var photoSrc = options.photos[Math.floor(Math.random() * len)],
  30. photoWidth = parseInt(options.minSize) + Math.random() * (parseInt(options.maxSize) - parseInt(options.minSize)),
  31. startTop = boxHeight,
  32. endTop = "-100%",
  33. startLeft = Math.floor(Math.random() * boxWidth),
  34. endLeft = Math.abs(startLeft - Math.floor(Math.random() * boxWidth)),
  35. duration = parseInt(boxHeight * + Math.random() * );
  36. if (!photoSrc.trim()) return; //图片src不能是空的
  37. photo.clone().attr("src", photoSrc).appendTo(box).css({
  38. top: startTop,
  39. left: startLeft,
  40. width: photoWidth
  41. }).animate({
  42. top: endTop,
  43. left: endLeft
  44. }, duration, "linear", function() {
  45. $(this).remove();
  46. });
  47. }, options.interval);
  48. }
  49. });
  50. })(jQuery);

气球或者泡泡向上飘动 jQuery插件的更多相关文章

  1. js最详细的基础,jquery 插件最全的教材

    一.Js的this,{},[] this是Javascript语言的一个关键字,随着函数使用场合的不同,this的值会发生变化.但是有一个总的原则,那就是this指的是调用的函数自己. { } 大括号 ...

  2. 40 个让你的网站更加友好的 jQuery 插件

    一个插件的基本功能是执行一个含有元素集合的函数数组.每个方法和jQuery核心组成一个插件,如.fadeOut()或.addClass().一个jQuery插件是一个基本的可以扩充jQuery 原型对 ...

  3. 40个让你的网站屌到爆的jQuery插件

    一 个插件的基本功能是执行一个含有元素集合的函数数组.每个方法和jQuery核心组成一个插件,如.fadeOut()或.addClass().一个 jQuery插件是一个基本的可以扩充jQuery 原 ...

  4. 15款帮助你实现响应式导航的 jQuery 插件

    对于我们大多数人来说,建立一个负责任的布局中最困难的方面是规划和导航的实现.由于没有真正经得起考验的通用解决方案,您可以使用的菜单设计风格将取决于正在建设的网站类型. 无论你正在建设什么类型的网站,在 ...

  5. 推荐几个jQuery插件

    jQuery仿京东无限级菜单HoverTree http://www.cnblogs.com/jihua/p/hvtree.html 多级弹出菜单jQuery插件ZoneMenu http://www ...

  6. 全屏滚动-jQuery插件实现

    全屏滚动 <---很久没写了,这段忙了点,以后还是每周尽量写点东西---> 在很多情况下,我们需要页面的全屏滚动,尤其是移动端.今天简要的介绍一下全屏滚动的知识. 一.全屏滚动的原理 1. ...

  7. 2014年50个程序员最适用的免费JQuery插件

    有用的jQuery库是设计师和开发者之间一个非常熟悉的短语.这是现在互联网中最流行的JavaScript函数库之一.每个设计师和开发人员都应该知道它的重要性,而且熟悉它的功能和特点. jQuery几乎 ...

  8. 期待已久的2012年度最佳jQuery插件揭晓

    近日,国外著名博客WDL发布了2012年度最佳 jQuery 插件.jQuery 自2006年发布以来,经过6年的迅速发展,目前已是最流行和使用最广泛的 JavaScript 框架,这主要归功于众多围 ...

  9. 如何创建一个自定义jQuery插件

    简介 jQuery 库是专为加快 JavaScript 开发速度而设计的.通过简化编写 JavaScript 的方式,减少代码量.使用 jQuery 库时,您可能会发现您经常为一些常用函数重写相同的代 ...

随机推荐

  1. RabbitMQ 连接断开处理-自动恢复

    Rabbitmq 官方给的NET consumer示例代码如下,但使用过程,会遇到connection断开的问题,一旦断开,这个代码就会报错,如果你的消费者端是这样的代码的话,就会导致消费者挂掉. u ...

  2. node-webkit教程(7)Platform Service之APP

    node-webkit教程(7)Platform Service之APP 文/玄魂 前言 几个月前,要开发一个简易的展示应用,要求支持离线播放(桌面应用)和在线播放(web应用). 当时第一想到的是f ...

  3. [ACM_搜索] POJ 1096 Space Station Shielding (搜索 + 洪泛算法Flood_Fill)

    Description Roger Wilco is in charge of the design of a low orbiting space station for the planet Ma ...

  4. ybutton 高端大气上档次华丽的按钮特效

    小菜偶然在某网站中看到一款非常华丽的按钮特效,感觉十分有必要抄袭下来,以备日后使用. 简单描述一下按钮的效果:鼠标移到按钮上的时候,会出现灯光闪过的效果,非常的高端. 但遗憾的,这么牛逼的效果,仅仅兼 ...

  5. IBM的“认知计算时代”

    IBM 提出信息技术进入“认知计算时代”.所有电子设备都有潜力发展出认知能力,换言之,都可以像人一样‘思考’. 何为认知计算时代呢?  认知计算系统能够学习并与人类自然地交流,以扩展人类或机器可亲自执 ...

  6. [BTS] The adapter "SQL" raised an error message. Details "The Messaging Engine is shutting down. ".

    Get a warning in event log. Log Name:      ApplicationSource:        BizTalk ServerDate:          3/ ...

  7. paip.中文 分词 -- 同义词大全整理

    paip.中文 分词 -- 同义词大全整理 同义词的处理方法: 作者Attilax  艾龙,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http://blo ...

  8. paip.基于urlrewrite的反向代理以及内容改写

    paip.基于urlrewrite的反向代理以及内容改写 ---------反向代理 RewriteCond %{REQUEST_URI} !=/process.php RewriteRule  ^( ...

  9. Django博客功能实现

    开发环境:Python3.5.2和Django1.10.2 username: rootemail: 2016968116@qq.compassword: 123456liuqiuchen 现在我们进 ...

  10. 解决12306.cn网站验证码获取提示“基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系“的问题

    https://dynamic.12306.cn/otsweb/passCodeAction.do?rand=sjrand&0.8967564508222368 这是图片的访问网址 大家看清楚 ...