位置: 编程技术 - 正文

javascript+HTML5 Canvas绘制转盘抽奖

编辑:rootadmin

推荐整理分享javascript+HTML5 Canvas绘制转盘抽奖,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

之前做过的项目中,有需要抽奖转盘功能的。项目已经完工一段时间了,也没出现什么严重的bug,所以现在拎出来分享给大家。

功能需求1、转盘要美观,转动效果流畅。2、转盘上需要显示奖品图片,并且奖品是后台读取的照片和名字。3、转动动画完成后要有相应提示。4、获取的奖品具体算法在数据库里操作,前端只提供最后的效果展示。

知识要点1、引用了一个jq插件:awardRotate,用来实现更智能化的转动(插件下载: api 进行操作。(canvas中文手册可以查看 由参数可知,我们需要从服务端获取相应的奖品名称,奖品内容,奖品图片页面标签等信息,再对大转盘进行渲染。所以我们的第一步操作就是向服务端发送请求获取对应的奖品信息,并且遍历到生成大转盘所需的数组参数里:

data.list是我获取来的奖品json数据:

由于客户要求奖品没有“谢谢参与”,所以最低奖品也为“优胜奖”,所以在遍历奖品之后,插入有关“优胜奖”的渲染描述即可:

因为图片加载需要时间,而使用canvas复制图片需要图片加载完成后才能绘制,所以我使用了preloadimages,让所有奖品图片都加载完毕后进行大转盘的渲染工作:

javascript+HTML5 Canvas绘制转盘抽奖

绘制转盘代码:

每一步基本上都有注释,对于canvas方法有不理解的可以百度,或者查询我上面分享的中文手册。html代码为:

效果图:

点击事件执行代码:

上面的代码实现了基本上的逻辑,还需要一个转动转盘的方法来响应服务端传过来的结果:

好了 主要的功能代码都已分享完毕了,还有些工具方法不理解的,可以留言 我会补充进去的。总结canvas是html5很强大的一张王牌,可以实现许多绚丽的效果,希望本文可以帮到一些正在学习使用canvas的朋友们。

浅析JavaScript中浏览器的兼容问题 浏览器兼容性问题是在实际开发中容易忽略而又最重要的一部分。我们在讲老版本浏览器兼容问题之前,首先要了解什么是能力检测,它是来检测浏览

javascript实现简单计算器效果【推荐】 最终效果如下图-2,有bug:就是整数后点击%号结果正确,如果小数后面点击%的话结果就错误!其他都正常,求指点:input的value是string类型的,在JS中改

javascript实现仿百度图片的瀑布流加载效果 由于没有服务器,就用一个json字符串作为下拉时加载图片数据的来源了html:!DOCTYPEhtmlhtmlheadmetahttp-equiv="Content-Type"content="text/html;charset=UTF-8"/scriptsrc="js/wate

标签: javascript+HTML5 Canvas绘制转盘抽奖

本文链接地址:https://www.jiuchutong.com/biancheng/373476.html 转载请保留说明!

上一篇:深入浅析JavaScript中的constructor(java script教程)

下一篇:浅析JavaScript中浏览器的兼容问题(javascript entries)

  • 所得税汇算清缴账务处理
  • 销售旧货的增值税税率
  • 对母公司的其他说法
  • 没有社保可以缴费吗
  • 营业外收入记账
  • 已付的账款叫什么
  • 销售增长率在报表上怎么看出来
  • 发票查询发票代码有误
  • 收到物业费普通发票做账
  • 无形资产出售收入属于营业收入吗
  • 工程保险费属于企业管理费吗
  • 哪些发票可以用ppt
  • 外汇收不到会不会丢
  • 合伙企业出资额不计入实收资本和资本公积 那放哪
  • 企业股权转让有什么好处
  • 金税三期退税
  • 航空公司按照一次性收费
  • 应交税费借方余额怎么处理
  • 企业购买理财产品收益会计分录
  • 法人一证通年费缴费
  • 企业代扣代缴个人所得税系统
  • 公司注销后银行账户怎么注销
  • 电子发票怎么作废操作流程视频
  • 三证合一之后的税务登记
  • 怎么辨别是非
  • 收到质量索赔款怎么入账
  • 企业减免企业所得税怎么算
  • 装修工程款如何记账
  • mac如何改变用户名
  • 销售利润率是什么能力指标
  • 企业违章行为
  • 网络公司的财务主要做什么
  • win10为什么每次开机都要输入微软密码
  • win10怎么更换版本
  • php正则表达式实例
  • 民办学校的财务制度
  • 银行存款的利息收入计入什么科目
  • 华为路由器怎么设置wifi密码
  • 保险中介市场现状和基本特点
  • PHP:mcrypt_generic_deinit()的用法_Mcrypt函数
  • PHP:imagecopymerge()的用法_GD库图像处理函数
  • php 图片上传
  • 微信php开发教程
  • php中session使用
  • 为什么说网络安全靠人民
  • php获取ua
  • 补交当年的增值税
  • 什么是预付账款的管理重点
  • 库存材料清查结论怎么写
  • 教你如何看懂标签
  • sql字符串处理函数
  • 应收账款科目的期末余额
  • 给客户退款怎么说
  • 电商收服务费合法吗
  • 进出口贸易出纳主要做什么
  • 财务费用中的利息支出
  • 债券发行后在市场上交易时是怎么确定交易价格的
  • 增值税对企业
  • 一般纳税人暂估入库的会计分录怎么写
  • 工资尾数差异财务怎么算
  • 外购固定资产
  • 安装sqlserver2008出现无法安装以下功能
  • guest怎么用
  • mac安装mysql详细教程
  • win8系统怎么到桌面
  • win1020h2版本是正式版吗
  • Win10 Mobile/PC/HoloLens一周年更新14389曝光
  • 麒麟系统命令
  • javascript详解
  • jquery控制display属性
  • jquery基础知识
  • unity物体碰撞爆炸
  • python系统代码
  • 税务上征信
  • 税务退休工资
  • 社保ukey怎么使用
  • 青海税务发票查询
  • 苏州工业园区国资委
  • 深圳国税咨询电话是多少
  • 补缴往年土地使用税怎么做分录
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设