Jquery 自定义插件写法(示例)
(function ($) {
$.SmsHelper = $.SmsHelper || {};
$.extend($.SmsHelper,
{
//插件具体实现代码
yzmnum: 60,
AjaxUrl: "/AjaxMethod/CommonSMS.ashx?key=GetSmsCode",
GetSmsCodeClick: function (phoneCode, obj) {
if (phoneCode == '') {
$.AmHelper.ShowMsg('请输入手机号');
return;
}
var reg = /^1[358]\d{9}$/;
if (!reg.test(phoneCode)) {
$.AmHelper.ShowMsg("手机号码格式不正确!");
return;
}
var objText = $(obj).val();
if (objText == '') {
objText = $(obj).text();
if (objText.indexOf('验证码') > -1) {
$.SmsHelper.GetSmsCodeEx(phoneCode, obj);
}
} else {
if (objText.indexOf('验证码') > -1) {
$.SmsHelper.GetSmsCode(phoneCode, obj);
}
}
},
//获得手机验证码
GetSmsCode: function (mobile, obj) {
$(obj).val('请稍后...' + $.SmsHelper.yzmnum);
$(obj).attr("disabled", true);
var yzmtime = setInterval(function () {
$.SmsHelper.yzmnum--;
$(obj).val('请稍后...' + $.SmsHelper.yzmnum);
if ($.SmsHelper.yzmnum == 0) {
$(obj).val('获取验证码');
$(obj).attr("disabled", false);
clearInterval(yzmtime);
$.SmsHelper.yzmnum = 60;
}
}, 1000);
if (mobile != "") {
$.ajax({
type: "post",
url: $.SmsHelper.AjaxUrl,
data: { "Mobile": mobile, "PageType": $.SmsHelper.smsPageType },
async: false,
dataType: "json",
success: function (msg) {
if (msg.returncode == "0") {
$.AmHelper.ShowMsg("验证码短信已发送");
} else {
$.AmHelper.ShowMsg(msg.message);
}
},
complete: function (XHR, TS) { XHR = null }
});
}
else {
$.AmHelper.ShowMsg('请填写手机号码!');
}
},
GetSmsCodeEx: function (mobile, obj, pageType) {
$(obj).text('请稍后...' + $.SmsHelper.yzmnum);
$(obj).attr("disabled", true);
var yzmtime = setInterval(function () {
$.SmsHelper.yzmnum--;
$(obj).text('请稍后...' + $.SmsHelper.yzmnum);
if ($.SmsHelper.yzmnum == 0) {
$(obj).text('获取验证码');
$(obj).attr("disabled", false);
clearInterval(yzmtime);
$.SmsHelper.yzmnum = 60;
}
}, 1000);
if (mobile != "") {
$.ajax({
type: "post",
url: $.SmsHelper.AjaxUrl,
data: { "Mobile": mobile, "PageType": smsPageType },
async: false,
dataType: "json",
success: function (msg) {
if (msg.returncode == "0") {
$.AmHelper.ShowMsg("验证码短信已发送");
} else {
$.AmHelper.ShowMsg(msg.message);
}
},
complete: function (XHR, TS) { XHR = null }
});
}
else {
$.AmHelper.ShowMsg('请填写手机号码!');
}
}
});
})(jQuery);
调用方式:
$.SmsHelper.GetSmsCodeClick();
Jquery 自定义插件写法(示例)的更多相关文章
- JQuery自定义插件详解之Banner图滚动插件
前 言 JRedu JQuery是什么相信已经不需要详细介绍了.作为时下最火的JS库之一,JQuery将其"Write Less,Do More!"的口号发挥的极致.而帮助J ...
- 深入学习jQuery自定义插件
原文地址:jQuery自定义插件学习 1.定义插件的方法 对象级别的插件扩展,即为jQuery类的实例增加方法, 调用:$(选择器).函数名(参数); $(‘#id’).myPlugin(o ...
- 代码:jquery自定义插件 demo
jquery自定义插件 demo 2016-1-13 只是一个简易的示例 <script type="text/javascript" src="http://cd ...
- jquery自定义插件——以 选项卡插件为例
一直打算尝试自定义插件,终于付诸实践了,现在把内容发表出来,与大家共勉. 我是根据自己正在用的插件,模仿其源码,实现的自定义插件,完成之后,在网上看相关资料,对自定义插件部分,有了更明确的认识. jq ...
- jQuery自定义插件
jQuery自定义插件 jQuery自定义插件按照功能分类,可以分为三类, 1>封装对象方法的插件,(也就是基于某个DOM元素的jQuery对象,局部的) 2>封装全局函数的插件, ( ...
- 你的专属定制——JQuery自定义插件
前 言 絮叨絮叨 jQuery是一个快速.简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架).jQuery设计的宗 ...
- jQuery自定义插件--banner图滚动
前言 jQuery是一个功能强大的库,提供了开发JavaScript项目所需的所有核心函数.很多时候我们使用jQuery的原因就是因为其使用插件的功能,然而,有时候我们还是需要使用自定义代码来扩展这些 ...
- fullpage的使用以及less, Sass的属性和JQuery自定义插件的声明和使用
使用fullpage的步骤 1 导入JQuery.js fullpage,js fullpage.css 2 组建网页布局,最外层id="fullpage" 单页class=& ...
- jquery自定义插件结合baiduTemplate.js实现异步刷新(附源码)
上一篇记录了BaiduTemplate模板引擎使用示例附源码,在此基础上对使用方法进行了封装 自定义插件jajaxrefresh.js 代码如下: //闭包限定命名空间 (function ($) { ...
随机推荐
- C++实现大正整数及其相关运算(长期更新)
/** 只考虑正数[1, +∞); “-”运算只允许大数减小数; 小端存储: */ typedef struct BigInteger0 { vector<int> v; BigInteg ...
- WPF 实现指定UI控件截图
using System.Windows.Media.Imaging; using System.IO; private void SaveToImage(FrameworkElement ui, s ...
- spring data jpa 的各种查询总结
参考哦:https://blog.csdn.net/weixin_36667844/article/details/79945156
- logger 的使用一 小结
方式一 依赖: <!-- log start --> <dependency> <groupId>log4j</groupId> <artifac ...
- C#实现图片文件到数据流再到图片文件的转换
//----引入必要的命名空间using System.IO;using System.Drawing.Imaging; //----代码部分----// private byte[] photo;/ ...
- RAD XE8
http://community.embarcadero.com/index.php/blogs/entry/rad-studio-2015-roadmap http://www.embarcader ...
- pom指定java编译版本和编码
方法一 <properties> <!-- 文件拷贝时的编码 --> <project.build.sourceEncoding>UTF-8</project ...
- 用VB6.0实现串口通信
Then ' 1位或2位 'byte 类型取值范围为 0-255 ,不能为-1 = ) & ) End IfstrHe ...
- 可视化库-Matplotlib-饼图与布局(第四天)
1. 画出一个基本的饼图,通过plt.pie() m = 51212 f = 40742 m_perc = m / (m+f) f_perc = f / (m+f) colors = ['navy', ...
- sceneManager.loadscene加载场景时不会主动去加载场景的依赖包,要手动加载或添加场景到build setting列表中
假设有一场景1001.unity,,manifest文件如下: ManifestFileVersion: 0CRC: 425184873Hashes: AssetFileHash: serialize ...