drawCircle: function () {
var self = this;
for(var row = 0; row < this.n; row++){
for(var col = 0; col < this.n; col++){
// 计算圆心坐标
var circlePoint = {
X: (this.canvasWidth/(this.n*2) + this.canvasWidth*col/this.n), //根据canvasWidth与n计算x,y坐标
Y: (this.canvasHeight/(this.n*2) + this.canvasHeight*row/this.n)
};
this.thcircle.push(circlePoint);
}
}
//console.log(thcircle);
for (var i = 0; i < this.thcircle.length; i++){
circlePoint = this.thcircle[i];
this.thcanvas.fillStyle = "#c3c3c3";
this.thcanvas.beginPath();
this.thcanvas.arc(circlePoint.X, circlePoint.Y, this.radius, 0, Math.PI * 2, true);
this.thcanvas.closePath();
this.thcanvas.fill();
this.thcanvas.fillStyle = "#ffffff";
this.thcanvas.beginPath();
this.thcanvas.arc(circlePoint.X, circlePoint.Y, this.radius - 3, 0, Math.PI * 2, true);
this.thcanvas.closePath();
this.thcanvas.fill();
}
this.setPwd.addEventListener("click",function () {
self.testPwd.checked = false;
self.notice.innerHTML = "请输入手势密?quot;;
},false);
this.testPwd.addEventListener("click",function () {
self.setPwd.checked = false;
self.notice.innerHTML = "验证密码";
},false);
this.canvas.addEventListener("touchstart", function (e) {
self.choosePwd(e.touches[0],self.thSelected,self.radius);
}, false);
this.canvas.addEventListener("touchmove", function (e) {
e.preventDefault();
self.choosePwd(e.touches[0],self.thSelected,self.radius);
self.thcanvas.clearRect(0,0,self.canvasWidth,self.canvasHeight);
self.drawLine(self.thcanvas,self.thcircle,self.thSelected,{ X:e.touches[0].pageX, Y:e.touches[0].pageY });
}, false);
this.canvas.addEventListener("touchend", function (e) {
self.thcanvas.clearRect(0,0,self.canvasWidth,self.canvasHeight);
self.drawLine(self.thcanvas,self.thcircle,self.thSelected,null);
var obj = document.getElementsByName('pwd');
//设置密码被选中
//这个地方用switch case 然后把判断的结果用变量保存一?便于修改
if(self.setPwd.checked==true) {
if (self.thSelected.length == 0) {
self.reSet();
}
else if (self.thSelected.length < 5 && self.thSelected.length > 0) {
self.notice.innerHTML = '密码太短,至少需要5个点';
self.reSet();
} else if (typeof localStorage.temp == "undefined") {
localStorage.temp = self.thSelected;
self.notice.innerHTML = "请再次输入手势密?quot;;
self.reSet();
}
else if (localStorage.temp == self.thSelected) {
localStorage.pwd = self.thSelected;
self.notice.innerHTML = "密码设置成功";
self.reSet();
localStorage.removeItem("temp");
} else {
self.notice.innerHTML = "两次输入不一?lt;/br>请重新设?quot;;
self.reSet();
localStorage.removeItem("temp");
}
}
//验证密码被选中
else if(self.testPwd.checked==true){
if (self.thSelected.length == 0) {
self.reSet();
} else if(localStorage.pwd == self.thSelected){
self.notice.innerHTML = "密码正确?quot;;
self.reSet();
}else{
self.notice.innerHTML = "输入的密码不正确";
self.reSet();
}
}
}, false);
},