js/js.KinerCode.js
(开头部分) 9KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
/**
* 纯js验证码校验
* Created by kiner on 15/3/26.
*/
function KinerCode(options) {
this.opt = this.extend(true, this.options, options);
this.opt.chars = (this.opt.chars && this.opt.chars.length == 0) ? this.options.chars : this.opt.chars;
//背景图优先级最高,用户指定背景颜色优先级次之,随机背景颜色优先级最低
this.opt.bg = (this.opt.bgImg && this.opt.bgImg.length != 0) ? "url('" + this.opt.bgImg + "')" : this.options.bgColor;
//当验证码是算术题形式时,先计算出算式的结果并保存与answer数组中
if(this.opt.question){
this.answer = [];
for(var i=0;i<this.opt.chars.length;i++){
this.answer.push(eval(this.opt.chars[i]));
}
}
//插件初始化
this.init();
//绑定事件
this.bind();
}
/**
* 初始化,创建验证码元素
*/
KinerCode.prototype.init = function () {
var self = this;
if(!this.body){
this.body = document.createElement('div');
}else{
this.body.innerHTML = '';
}
//当用户选择禁止复制验证码中文字时执行,禁用验证码区域及验证码输入框的复制、选中、右键菜单等操作
if (!self.copy) {
doProhibit();
}
//创建验证码
this.myCode = this.createCode();
//console.log(this.myCode);
//创建验证码项元素并添加进其盒子中
var len = this.myCode.arrCode.length;
for (var i = 0; i < len; i++) {
var item = this.createCodeEle(this.myCode.arrCode[i]);
this.body.appendChild(item);
}
//为验证码盒子设置样式
this.body.style.background = this.opt.randomBg ? this.toRGB().background : this.opt.bg;
后面还有 289 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。