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 ($) { ...
随机推荐
- mysql 使用inet_aton和inet_ntoa处理ip地址数据
mysql 使用inet_aton和inet_ntoa处理ip地址数据 mysql提供了两个方法来处理ip地址 inet_aton 把ip转为无符号整型(4-8位) inet_ntoa 把整型的ip转 ...
- py基础4--迭代器、装饰器、软件开发规范
本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 1. 列表生成式,迭代器&生成器 列表生成式 我现在有个需求, ...
- PY安装模块
Python安装失败原因 0环境 , pip版本一般为 7.x , 所以一般需要先升级pip版本 , 也就是执行 ```shellpython -m pip install --upgrade pip ...
- 细说Cookie(转)
原文地址:http://www.cnblogs.com/fish-li/archive/2011/07/03/2096903.html#undefined Cookie虽然是个很简单的东西,但它又是W ...
- ElasticSearch 基础概念学习(未完)
1.基本定义 摘自百度百科 elasticseaElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elastic ...
- Date 当前程序日期格式 参数设置 DecimalSeparator
日期格式.货币格式等 Date DateFormat DecimalSeparator FormatSettings FormatSettings.DateSeparator='-'; 控制面板的日期 ...
- Visual Basic 函数速查
Calendar 常数 可在代码中的任何地方用下列常数代替实际值: 常数 值 描述 vbCalGreg 0 指出使用的是阳历. vbCalHijri 1 指出使用的是伊斯兰历法. Color 常数 可 ...
- ATL控件签名之后页面还提示“在此页面上的Activex控件和本页上的其他部分及交互可能不安全”
ATL控件正常签名打包,然后安装之后还是会提示: 没理由啊,签名是花钱搞得正当的签名.后来查了资料才知道这还不够,需要在创建ATL控件的时候继承一个IObjectSafetyImpl 类 知道了原因, ...
- 【转】从Mac/OS和iOS开放源码浅谈UNIX家谱
阅读数:1245 苹果公司在各类开源项目中长期贡献着自己的力量,但其UNIX系统技术一直都属于闭源阵营(这一点可以从NUX OS阵营和家谱图中得到答案).然而,以封闭闻名的苹果公司,2017年国庆期间 ...
- ajax基本常识及get请求方式
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"% ...