当前位置:首页 > 日记 > 正文

使用HTML5画布的划痕效果

使用HTML5画布的划痕效果
先告诉你效果:

下载下载演示源代码

你玩过刮刮卡一个无心的人,可以获奖。我要共享一张基于HTML5技术的卡片来达到划痕的效果,你今天在PC上只需要按手机上的鼠标,你只需要按住手指,轻轻地刮掉层就能模拟真正的奖品刮效果。

我们使用HTML5画布画布,结合所提供的API,在画布元素中绘制一个灰色遮罩层,然后通过鼠标检测用户和手势绘制透明图形,从而可以看到画布真实图片的背景,达到刮刮卡效果。
HTML
我们只需要在页面中添加画布标记元素,然后其他人会查看Javascript,注意画布元素是HTML5的一部分,它在支持HTML5的现代浏览器上运行。

Javascript
首先,我们要禁用页面上选择的鼠标的拖动事件,或者不执行选定操作的执行。

VaR型号= document.body.style;
bodystyle.mozuserselect =不关;
bodystyle.webkituserselect =不关;
然后定义图片类,获取画布元素,并设置背景和位置属性。在这种情况下,我们使用两张随机照片刷新一次随机图片作为背景。

VaR img =新的图像();
VaR的画布document.queryselector('canvas);
画布背景颜色= 'transparent。风格;
canvas.style.position =绝对的;
VaR IMGS = { 'p_0 .webp,'p_1 .webp};
VaR Num = math.floor(Math.random)*(2);
img.src = IMGS {数量};
然后进入人体,当检测到的图像被加载,首先一些属性和函数的定义,函数(层)是用来绘制一个灰色的正方形,eventdown(eventup)定义了新闻事件()定义了释放事件,eventmove()定义了移动事件,按下它时,得到的位移坐标。通过电弧(X,Y,10, 0,math.pi×2)画点。

Img.addEventListener(负荷功能(e){
VaR CTX;
无功W = img.width,
H = img.height;
无功offsetx = canvas.offsetleft,
offsety = canvas.offsettop;
Var MouseDown =假;
功能层(CTX){
ctx.fillstyle = 'gray;
ctx.fillrect(0, 0,W,H);
}
功能eventdown(e){
E.preventDefault();
mousedown =真;
}
功能eventup(e){
E.preventDefault();
mousedown = false;
}
功能eventmove(e){
E.preventDefault();
如果(mousedown){
如果(e.changedtouches){
E = e.changedtouches { e.changedtouches length-1 };
}
var = X(e.clientx + document.body.scrollleft e.pagex offsetx | | | |)- 0,
Y =(e.clienty + document.body.scrolltop e.pagey offsety | | | |)- 0;
用(CTX){
BeginPath()
弧(x,Y,10, 0,math.pi×2); / /画点
填充();
}
}
}

});
最后,通过画布调用上述函数,绘制图形,并收听触摸和鼠标事件,调用相应的函数,请参见代码:

Img.addEventListener(负荷功能(e){
上/中/…代码
画布宽度= W;
画布高度= h;
帆布风格。背景= 'url(+ IMG SRC +'。);
CTX = canvas.getcontext(二维的);
CTX fillStyle = 'transparent;
ctx.fillrect(0, 0,w,h); / /画一个矩形
层(CTX);
ctx.globalcompositeoperation = 'destination-out;
canvas.addeventlistener('touchstart ',eventdown);
canvas.addeventlistener('touchend ',eventup);
canvas.addeventlistener('touchmove ',eventmove);
canvas.addeventlistener('mousedown ',eventdown);
canvas.addeventlistener('mouseup ',eventup);
canvas.addeventlistener('mousemove ',eventmove);
以上只是仅供参考,我们可以结合实际情况,结合后台数据库和程序,完成一个真正的划痕。

相关文章

使用jQuery分页控件在ANGULARJS

使用jQuery分页控件在ANGULARJS

分页,控件,电脑软件,jQuery,ANGULARJS,首先,我不知道写什么,思考,分页控制的方法,希望能讨论一下。 分页是前端数据显示的常用功能。在角js使用本地寻呼需要把所有的数据到前端,然后到首页分页,在海量数据的操作是不现实的。接下来,我介绍一个修…

excel表格自动求和公式及批补课exc

excel表格自动求和公式及批补课exc

公式,表格,基础,电脑软件,excel,许多朋友在做一些数据表格时使用公式运算,包括多表中的数据总和。求和是一个我们在excel表格中经常使用的运算公式。我们从两个表中添加数据以获得结果,或者我们将多个表加在一起以获得数据结果。 在Excel表中…

excel快速输入实用技能excel基础

excel快速输入实用技能excel基础

输入,技能,快速,基础,电脑软件,以下是excel快速输入实用技巧,供大家分享。我希望你能帮助你。 1。快速输入大量相同的数据 如果你想在一个不同的单元格中输入很多相同的数据,你不必一个接一个地输入它。 具体方法是:首先选择需要同时填充数据…

Excel基础是如何位于excel基的标题

Excel基础是如何位于excel基的标题

标题,基础,电脑软件,Excel,excel,在Excel中添加到工作表中的背景在整个工作表中排列。它只能在桌子的顶部吗 1、执行格式具有;表RARR;背景命令,打开工作表背景;;对话框,选择图片需要背景,按下插入按钮,将图片,整个工作表下。 2。按住Ctrl键时,鼠标拖…

excel数据图表编辑操作的快捷方式

excel数据图表编辑操作的快捷方式

操作,数据,图表,快捷方式,编辑,快捷键和excel快捷键是我们常用的两种办公快捷方式。实际上,办公快捷方式如此之多,掌握这些快捷键可以大大提高工作效率。 创建图表并选择图表元素 如果你想 出版社 创建当前区域中数据的图表。 F11或ALT+F1…

什么是经典签名是最新的经典签名

什么是经典签名是最新的经典签名

经典,最新,电脑软件,每个人都有自己的签名。你必须绞尽脑汁才能使你的签名与众不同。现在没有必要纠结了。这里有一些最经典的个性签名推荐萧边。你看到了吗 1,你的手臂只能给我一个永远抱着你。 2,世界上最难的选择是选择两个。 3,亲爱的,不要…

什么样的功能cc2015AI,AIcc2015新功

什么样的功能cc2015AI,AIcc2015新功

学习,能力,新功能,功能,电脑软件,艾cc2015的功能是什么很多朋友都不是很清楚。本教程介绍朋友艾cc2015的新功能和AI的学习能力。一个不太清楚的朋友可以参考这篇文章,希望能对你有所帮助。 Adobe发布cc2015 AI的最新版本在2015年6月。现在我…

Word2010允许搜索结果与明亮的黄色

Word2010允许搜索结果与明亮的黄色

教程,显示,搜索结果,明亮,黄色,Word2010提供的工具来节省时间和简化工作。如果我们掌握了导航窗格和查找工具。使用这些新的功能可以更容易浏览,搜索,甚至重新组织文档的内容从一个易于使用的窗格。 导航窗格中首次提出了Office2010。在以前…

一个人的情人节伤感qq个性签名伤感

一个人的情人节伤感qq个性签名伤感

个性签名,情人节,伤感,电脑软件,qq,当你爱上一个人的时候,有失去的可能,并且有一个悲伤的日子。我们生来只有一个人。 另一半只是我们想要依靠的安慰。事实上,一个人的生活中有一个惊喜。下雨的时候,你可以从雨伞的侧面摸到雨。 雨后,望着彩虹,闻…

经典爱情伤感个性签名伤感个性签名

经典爱情伤感个性签名伤感个性签名

伤感,个性签名,经典,爱情,电脑软件,以下是萧边收集的经典爱情伤感的内容,超伤感的个性签名。如果你喜欢Xiaobian的推荐,请注意它。 分手并不可怕,恐惧依然没有放下。 我爱的味道,愿意捍卫左心。 我太累了,不能让你走,直到有一天完全自由。 一个人…

简单制作橙色辐射背景

简单制作橙色辐射背景

辐射,橙色,背景,简单,电脑软件,本教程是简要介绍ps的背景方法,使橙色辐射效应。本教程旨在提供一个非常好的放射性背景。建议你喜欢你的朋友一起学习。 本教程教ps学习者使用ps创建简单的橙色放射学背景。本教程是一个基本介绍的例子,辐射效…

Word2010文档打印选项的具体步骤Wo

Word2010文档打印选项的具体步骤Wo

文档,教程,打印选项,具体步骤,电脑软件,在Word2010中,用户可以更适合通过设置打印选项,实际应用中的打印设置,和你的设置适用于所有Word文档,步骤在Word2010设置Word文档的打印选项如下: 操作步骤 1、打开Word2010文档窗口,依次单击文件;;具有;选项…