位置: 编程技术 - 正文

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)

  • 岗位津贴和岗位补贴
  • 污水处理企业如何捕捉碳中和减少了的碳足迹
  • 个税专项扣除是什么时候开始实行
  • 年金终值的公式
  • 公司将固定资产卖出,要交什么税
  • 跨年度发票退回如何记账
  • 简易计税方法使用范围
  • 小规模纳税人增值税超过30万怎么纳税
  • 多交税款退税怎么做账
  • 中小企业划分标准
  • 期望和方差的计算例题
  • 企业代扣员工社保怎样做分录
  • 参加失业保险本期实际缴费金额包括员工承担部分吗?
  • linux 去除换行
  • 政府补助开票怎么申报增值税
  • 企业合并收购,对员工的机会和挑战
  • 原始凭证必须具备的基本要素
  • abstract php
  • 关于企业发生的手续费及佣金支出的扣除标准
  • 技术维护费计入
  • zendframework3
  • 扣缴单位无有效的税费种认定信息
  • java本地缓存框架有哪些
  • 手把手教你使用opc
  • pytorch .pt
  • php getcwd与dirname(__FILE__)区别详解
  • 出纳记账凭证怎么写
  • 增值税差异调整
  • c语言typedef的用法
  • 带附件的目录
  • 织梦怎么新建页面
  • 织梦专题页模板
  • 织梦设置会员访问
  • 银行日记账跨月登记方法
  • 转出未交增值税最终怎么转平
  • 第一季度利润表年初余额
  • MSSQL2005 INSERT,UPDATE,DELETE 之OUTPUT子句使用实例
  • 物业公司物业费计入什么会计科目
  • 母公司和子公司是什么关系
  • 退休人员的返聘合同
  • 公司一年发两次奖金
  • 工会经费计算公式的例子
  • 代收收入
  • 如何进行汇算清缴
  • 赠品不开票怎么办
  • 可供出售金融资产有哪些
  • 冲销以前年度费用会计分录
  • 营业外支出包括哪些内容
  • friend怎么用
  • Fedora Core 4.0 安装图解
  • 文件夹字体变成蓝色怎么恢复
  • window10电池
  • win 驱动
  • xp系统无法预览图片
  • linux怎么删除文本文件
  • ServiceLayer.exe - ServiceLayer是什么进程 有什么用
  • win10系统谷歌浏览器为什么打不开
  • linux中fdisk -l
  • win8.1和win10哪个好用
  • windows预览0x80072ee2
  • js操作dom节点的方法
  • jquery插件大全
  • 批处理删除指定后缀名
  • unity核心模块
  • js表单事件有哪些
  • 如何解决android兼容问题
  • 用javascript
  • js选中div
  • javascript例题
  • python中对象的概念
  • js prototype constructor
  • javascript面向对象精要
  • android xmlns
  • 国家对供暖企业更换主管道有没有年限?
  • 精准扶贫有哪些分类措施
  • 如何抵扣税款
  • 1973年简并税制
  • 长沙税务服务热线
  • 买车购置税去哪里交钱
  • 西安市乱占耕地建房
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设