jqury插件编写
sae中短信验证码:
; (function($) {
$(document).ready(function() {
if (parent && parent.location.href != location.href) parent.location.href = location.href;
var timelineBox = $('.timeline-box') timelineBox.find('.progress .bar').each(function(k, v) {
$(v).css('width', '25%')
}) var retryBtn = $('#get-vcode');
var codeBox = $('#verify');
retryBtn.addClass('disabled').fadeIn().on('click',
function(e) {
e.preventDefault();
});
var pageTimer = function(limit, interval) {
retryBtn.attr('data-ready', 'loading').addClass('disabled').off('click').on('click',
function(e) {
e.preventDefault();
});
setTimeout(function() {
if (limit > interval) {
limit -= interval;
retryBtn.text('重新获取验证码(' + parseInt(limit / 1000) + 's)');
setTimeout(arguments.callee, interval);
} else {
retryBtn.attr('data-ready', 'ready').text('重新获取验证码').removeClass('disabled').off('click').on('click', retryBtnFunc);
}
},
interval);
}
pageTimer(60000, 1000);
var retryBtnFunc = function(e) {
e.preventDefault();
if (retryBtn.attr('data-ready') == 'ready') {
$.ajax({
url: '/?m=user&a=send_mobile_code',
type: 'POST',
dataType: 'JSON',
success: function(resp, state, xhr) {
var success = xhr.getResponseHeader('reg_ok');
if (success) {
location.href = '/?m=user&a=finish_register';
} else if (xhr.getResponseHeader('sae_ok') || resp.event > 299) {
retryBtn.popover('destroy');
retryBtn.popover({
title: '系统提示',
content: resp.message
}).popover('show');
codeBox[0].select();
pageTimer(60000, 1000);
}
}
}) pageTimer(60000, 1000);
}
}
$('#verify-mobile').on('click',
function(e) {
e.preventDefault();
var ret = $SAETOOLS.trim(codeBox.val());
if (ret.length) {
$.ajax({
url: '/?m=user&a=check_mobile_code',
data: 'vcode=' + ret,
type: 'POST',
dataType: 'JSON',
success: function(data, state, xhr) {
var success = xhr.getResponseHeader('reg_ok');
if (success) {
location.href = '/?m=user&a=finish_register';
} else if (xhr.getResponseHeader('sae_ok') || data.event > 299) {
if (422 == data.event) {
retryBtn.popover('destroy');
$('#verify').popover('destroy').popover({
title: '系统提示',
content: data.message
}).popover('show');
$('#get-vcode').remove();
} else if (data.event <= 299 && data.event >= 200) {
location.href = '/?m=user&a=finish_register';
} else {
retryBtn.popover({
title: '系统提示',
content: data.message
}).popover('show');
codeBox[0].select();
pageTimer(60000, 1000);
}
}
}
})
} else {
codeBox.popover('destroy');
codeBox.popover({
title: '系统提示',
content: '请输入验证码,如果没有收到验证码,可以尝试发送短信到服务器进行手动验证。'
}).popover('show');
codeBox[0].select();
}
});
$('#step-second').on('click',
function(e) {
e.preventDefault();
location.href = '/?m=user&a=security2';
})
})
})(jQuery)
jqury插件编写的更多相关文章
- 设计师和开发人员更快完成工作需求的20个惊人的jqury插件教程(上)
[转] 设计师和开发人员更快完成工作需求的20个惊人的jqury插件教程(上) jquery的功能总是那么的强大,用他可以开发任何web和移动框架,在浏览器市场,他一直是占有重要的份额,今天,就给大家 ...
- jQuery插件编写步骤详解
如今做web开发,jquery 几乎是必不可少的,就连vs神器在2010版本开始将Jquery 及ui 内置web项目里了.至于使用jquery好处这里就不再赘述了,用过的都知道.今天我们来讨论下jq ...
- jquery插件编写【转载】
如今做web开发,jquery 几乎是必不可少的,就连vs神器在2010版本开始将Jquery 及ui 内置web项目里了.至于使用jquery好处这里就不再赘述了,用过的都知道.今天我们来讨论下jq ...
- jQuery插件编写及链式编程模型小结
JQuery极大的提高了我们编写JavaScript的效率,让我们可以愉快的编写代码,做出各种特效.大多数情况下,我们都是使用别人开发的JQuery插件,今天我们就来看看如何把我们常用的功能做出JQu ...
- Wireshark插件编写
Wireshark插件编写 在抓包的过程中学习了使用wireshark,同时发现wireshark可以进行加载插件,便在网上学习了一下相应的插件开发技术. 需求编写一个私有协议名为SYC,使用UDP端 ...
- typecho插件编写教程1 - 从HelloWorld说起
typecho插件编写教程1 - 从HelloWorld说起 老高 187 5月25日 发布 推荐 0 推荐 收藏 2 收藏,189 浏览 最近老高正在编写一个关于typecho的插件,由于typec ...
- jQuery插件编写及链式编程模型
jQuery插件编写及链式编程模型小结 JQuery极大的提高了我们编写JavaScript的效率,让我们可以愉快的编写代码,做出各种特效.大多数情况下,我们都是使用别人开发的JQuery插件,今天我 ...
- vue插件编写与实战
关于 微信公众号:前端呼啦圈(Love-FED) 我的博客:劳卜的博客 知乎专栏:前端呼啦圈 前言 热爱vue开发的同学肯定知道awesome-vue 这个github地址,里面包含了数以千计的vue ...
- chart.js angular组件封装(ng6)、实战配置、插件编写
前言 项目需要使用chart.js插件,由于项目是使用angular开发,那么我第一步就是先把chart.js改造成angular组件来使用. 本项目代码都可以在github上下载:项目git地址 a ...
随机推荐
- [Android Pro] android root权限破解分析
许 多机友新购来的Android机器没有破解过Root权限,无法使用一些需要高权限的软件,以及进行一些高权限的操作,其实破解手机Root权限是比较简 单及安全的,破解Root权限的原理就是在手机的/s ...
- EF Power Tools使用介绍
EF Power Tools可以从数据库反向生成实体及映射文件.一般在使用EF,有Database First,Code First以及Model First.常用的是Database ...
- iOS: 如何调节UITabbarItem的图片和文字位置
转载自:http://blog.csdn.net/kevinwlc/article/details/21467499/ 在ios7中,方法setFinishedSelectedImage:withFi ...
- iOS:带主标题、副标题、图像类型的表格视图UITableView
制作一个通讯录,包括姓名.电话.头像,将表格视图类型设置为UITableViewCellStyleSubtitle 效果图: //创建一个联系人的类,初始化数据 在视图控制器中实现表格内容的显示 #i ...
- Android系统信息获取
在Android中可以通过android.os.Build这个类和System.getProperty(“xxx”);来获取设备信息,下面列举的常见设备信息摘自Android群英传 Build.BOA ...
- [转] 菜鸟手脱VMP,附上脱壳过程和自己写的脚本,可跨平台
转载:http://www.52pojie.cn/thread-467703-1-1.html 工作需要要脱一个VMP壳,我是一个从来没接触过脱壳的人.瞬间那种心情遇到的人应该都知道!没办法硬着头皮找 ...
- jQuery序列化表单数据 serialize()、serializeArray()及使用
1.serialize() 方法: serialize() 方法通过序列化表单值,创建 URL 编码文本字符串. 您可以选择一个或多个表单元素(比如 input 及/或 文本框),或者 form 元素 ...
- Linux阅读笔记(一)
1.关机命令 shutdown -h now 马上关机 shutdown -r now 马上重新启动 reboot ...
- Google POI下载工具破解之路
我是GIS初学者,爱好二次开发,像初恋一样.最近对编译感兴趣,每当成功获取一点信息,就有一种快感,感觉马上就要成功了……其实,还早! 01.初次反编译 今天在微创业工作室找到了Google POI下载 ...
- Shodan:黑客的物联网搜索引擎
记得看过一个电影.里面的科学家开发了一个超级系统,能够实时监控全部可用摄像头.让逃犯无处遁形. Shodan这个新型的搜索引擎可能会让这个想法变成现实. 和Google这些传统互联网信息搜索引擎不同. ...