参考:http://web.jobbole.com/90970/
基本要求是这样的:将密码保存到 localStorage 里,开始的时候会从本地读取密码,如果没有就让用户设置密码,密码最少为五位数,少于五位要提示错误。需要对第一次输入的密码进行验证,两次一样才能保持,然后是验证密码,能够对用户输入的密码进行验证。
具体思路如下:
一:新建画布,指定宽度,每行排列3个圆,计算圆的半径,根据半径确定圆心。用arc(x,y,r,0,2*PI,true)函数画圆;
二:初始化密码,如果window.localStorage.getItem("HandLock")存在密码,则切换到model=1,验证密码;否则为{model:2},设置密码;
三:监听touchstart事件,touchmove事件,touchend事件
touchstart事件:获取触点的相对位置,清空touchedCircle数组,判断触点是否在圆内,若在添加在touchedCircle数组中,同时从restCirle数组中删除,每次是对restCirle数组进行
遍历,防止重复添加,然后设置touchFlag和redraw为true。
touchmove事件(添加节流函数):通过一个变量保存触点位置,判断触点的touchFlag属性,如果为true则:如果touchedCircle的长度大于等于1,则圆心与触点连线&