jQuery插件实现“点击获取验证码后60秒内禁止重新获取(防刷新)”
来源:互联网 发布:数据库购买 编辑:程序博客网 时间:2024/05/22 01:35
转自:jQuery插件实现“点击获取验证码后60秒内禁止重新获取(防刷新)”
效果图
先到官网(http://plugins.jquery.com/)下载jquery.cookie.js插件,放到相应文件夹,代码如下:
<code class="hljs xml has-numbering"><span class="hljs-doctype"><!DOCTYPE html></span><span class="hljs-tag"><<span class="hljs-title">html</span>></span><span class="hljs-tag"><<span class="hljs-title">head</span>></span> <span class="hljs-tag"><<span class="hljs-title">meta</span> <span class="hljs-attribute">charset</span>=<span class="hljs-value">"utf-8"</span>></span> <span class="hljs-tag"><<span class="hljs-title">meta</span> <span class="hljs-attribute">http-equiv</span>=<span class="hljs-value">"X-UA-Compatible"</span> <span class="hljs-attribute">content</span>=<span class="hljs-value">"IE=edge,chrome=1"</span>></span> <span class="hljs-tag"><<span class="hljs-title">title</span>></span>Examples<span class="hljs-tag"></<span class="hljs-title">title</span>></span> <span class="hljs-tag"><<span class="hljs-title">meta</span> <span class="hljs-attribute">name</span>=<span class="hljs-value">"description"</span> <span class="hljs-attribute">content</span>=<span class="hljs-value">""</span>></span> <span class="hljs-tag"><<span class="hljs-title">meta</span> <span class="hljs-attribute">name</span>=<span class="hljs-value">"keywords"</span> <span class="hljs-attribute">content</span>=<span class="hljs-value">""</span>></span> <span class="hljs-tag"><<span class="hljs-title">script</span> <span class="hljs-attribute">src</span>=<span class="hljs-value">"js/jquery.min.js"</span> ></span><span class="javascript"></span><span class="hljs-tag"></<span class="hljs-title">script</span>></span> <span class="hljs-tag"><<span class="hljs-title">script</span> <span class="hljs-attribute">src</span>=<span class="hljs-value">"js/jquery.cookie.js"</span> ></span><span class="javascript"></span><span class="hljs-tag"></<span class="hljs-title">script</span>></span> <span class="hljs-tag"><<span class="hljs-title">style</span> <span class="hljs-attribute">type</span>=<span class="hljs-value">"text/css"</span>></span><span class="css"> * <span class="hljs-rules">{<span class="hljs-rule"><span class="hljs-attribute">margin</span>:<span class="hljs-value"> <span class="hljs-number">0</span></span></span>; <span class="hljs-rule"><span class="hljs-attribute">padding</span>:<span class="hljs-value"> <span class="hljs-number">0</span></span></span>; <span class="hljs-rule"><span class="hljs-attribute">font-family</span>:<span class="hljs-value"> <span class="hljs-string">"Microsoft Yahei"</span></span></span>;<span class="hljs-rule">}</span></span> <span class="hljs-class">.captcha-box</span> <span class="hljs-rules">{<span class="hljs-rule"><span class="hljs-attribute">width</span>:<span class="hljs-value"> <span class="hljs-number">360</span>px</span></span>; <span class="hljs-rule"><span class="hljs-attribute">height</span>:<span class="hljs-value"> <span class="hljs-number">34</span>px</span></span>; <span class="hljs-rule"><span class="hljs-attribute">margin</span>:<span class="hljs-value"> <span class="hljs-number">30</span>px</span></span>; <span class="hljs-rule"><span class="hljs-attribute">padding</span>:<span class="hljs-value"> <span class="hljs-number">30</span>px</span></span>; <span class="hljs-rule"><span class="hljs-attribute">border</span>:<span class="hljs-value"> <span class="hljs-hexcolor">#956E6F</span> <span class="hljs-number">1</span>px dashed</span></span>; <span class="hljs-rule"><span class="hljs-attribute">border-radius</span>:<span class="hljs-value"> <span class="hljs-number">5</span>px</span></span>; <span class="hljs-rule"><span class="hljs-attribute">background-color</span>:<span class="hljs-value"> <span class="hljs-hexcolor">#FAF2F2</span></span></span>;<span class="hljs-rule">}</span></span> <span class="hljs-id">#mobile</span> <span class="hljs-rules">{ <span class="hljs-rule"><span class="hljs-attribute">float</span>:<span class="hljs-value"> left</span></span>; <span class="hljs-rule"><span class="hljs-attribute">width</span>:<span class="hljs-value"> <span class="hljs-number">180</span>px</span></span>; <span class="hljs-rule"><span class="hljs-attribute">height</span>:<span class="hljs-value"> <span class="hljs-number">32</span>px</span></span>; <span class="hljs-rule"><span class="hljs-attribute">border</span>:<span class="hljs-value"> <span class="hljs-hexcolor">#e5e5e5</span> <span class="hljs-number">1</span>px solid</span></span>; <span class="hljs-rule"><span class="hljs-attribute">line-height</span>:<span class="hljs-value"> <span class="hljs-number">32</span>px</span></span>; <span class="hljs-rule"><span class="hljs-attribute">text-indent</span>:<span class="hljs-value"> <span class="hljs-number">8</span>px</span></span>; <span class="hljs-rule"><span class="hljs-attribute">outline</span>:<span class="hljs-value"> none</span></span>;<span class="hljs-rule">}</span></span> <span class="hljs-id">#getting</span> <span class="hljs-rules">{<span class="hljs-rule"><span class="hljs-attribute">float</span>:<span class="hljs-value"> left</span></span>; <span class="hljs-rule"><span class="hljs-attribute">height</span>:<span class="hljs-value"> <span class="hljs-number">34</span>px</span></span>; <span class="hljs-rule"><span class="hljs-attribute">margin-left</span>:<span class="hljs-value"> -<span class="hljs-number">1</span>px</span></span>; <span class="hljs-rule"><span class="hljs-attribute">padding</span>:<span class="hljs-value"> <span class="hljs-number">0</span> <span class="hljs-number">18</span>px</span></span>; <span class="hljs-rule"><span class="hljs-attribute">text-align</span>:<span class="hljs-value"> center</span></span>; <span class="hljs-rule"><span class="hljs-attribute">line-height</span>:<span class="hljs-value"> <span class="hljs-number">34</span>px</span></span>; <span class="hljs-rule"><span class="hljs-attribute">border</span>:<span class="hljs-value"> <span class="hljs-hexcolor">#e5e5e5</span> <span class="hljs-number">1</span>px solid</span></span>; <span class="hljs-rule"><span class="hljs-attribute">background</span>:<span class="hljs-value"> <span class="hljs-function">linear-gradient(<span class="hljs-number">0</span>deg, #f4f2f2 <span class="hljs-number">0</span>%,#fbf9f9 <span class="hljs-number">100</span>%)</span></span></span>; <span class="hljs-rule"><span class="hljs-attribute">cursor</span>:<span class="hljs-value"> pointer</span></span>; <span class="hljs-rule"><span class="hljs-attribute">outline</span>:<span class="hljs-value"> none</span></span>;<span class="hljs-rule">}</span></span> </span><span class="hljs-tag"></<span class="hljs-title">style</span>></span> <span class="hljs-tag"><<span class="hljs-title">script</span>></span><span class="javascript"> $(<span class="hljs-function"><span class="hljs-keyword">function</span><span class="hljs-params">()</span>{</span> <span class="hljs-comment">/*防刷新:检测是否存在cookie*/</span> <span class="hljs-keyword">if</span>($.cookie(<span class="hljs-string">"captcha"</span>)){ <span class="hljs-keyword">var</span> count = $.cookie(<span class="hljs-string">"captcha"</span>); <span class="hljs-keyword">var</span> btn = $(<span class="hljs-string">'#getting'</span>); btn.val(count+<span class="hljs-string">'秒后可重新获取'</span>).attr(<span class="hljs-string">'disabled'</span>,<span class="hljs-literal">true</span>).css(<span class="hljs-string">'cursor'</span>,<span class="hljs-string">'not-allowed'</span>); <span class="hljs-keyword">var</span> resend = setInterval(<span class="hljs-function"><span class="hljs-keyword">function</span><span class="hljs-params">()</span>{</span> count--; <span class="hljs-keyword">if</span> (count > <span class="hljs-number">0</span>){ btn.val(count+<span class="hljs-string">'秒后可重新获取'</span>).attr(<span class="hljs-string">'disabled'</span>,<span class="hljs-literal">true</span>).css(<span class="hljs-string">'cursor'</span>,<span class="hljs-string">'not-allowed'</span>); $.cookie(<span class="hljs-string">"captcha"</span>, count, {path: <span class="hljs-string">'/'</span>, expires: (<span class="hljs-number">1</span>/<span class="hljs-number">86400</span>)*count}); }<span class="hljs-keyword">else</span> { clearInterval(resend); btn.val(<span class="hljs-string">"获取验证码"</span>).removeClass(<span class="hljs-string">'disabled'</span>).removeAttr(<span class="hljs-string">'disabled style'</span>); } }, <span class="hljs-number">1000</span>); } <span class="hljs-comment">/*点击改变按钮状态,已经简略掉ajax发送短信验证的代码*/</span> $(<span class="hljs-string">'#getting'</span>).click(<span class="hljs-function"><span class="hljs-keyword">function</span><span class="hljs-params">()</span>{</span> <span class="hljs-keyword">var</span> btn = $(<span class="hljs-keyword">this</span>); <span class="hljs-keyword">var</span> count = <span class="hljs-number">60</span>; <span class="hljs-keyword">var</span> resend = setInterval(<span class="hljs-function"><span class="hljs-keyword">function</span><span class="hljs-params">()</span>{</span> count--; <span class="hljs-keyword">if</span> (count > <span class="hljs-number">0</span>){ btn.val(count+<span class="hljs-string">"秒后可重新获取"</span>); $.cookie(<span class="hljs-string">"captcha"</span>, count, {path: <span class="hljs-string">'/'</span>, expires: (<span class="hljs-number">1</span>/<span class="hljs-number">86400</span>)*count}); }<span class="hljs-keyword">else</span> { clearInterval(resend); btn.val(<span class="hljs-string">"获取验证码"</span>).removeAttr(<span class="hljs-string">'disabled style'</span>); } }, <span class="hljs-number">1000</span>); btn.attr(<span class="hljs-string">'disabled'</span>,<span class="hljs-literal">true</span>).css(<span class="hljs-string">'cursor'</span>,<span class="hljs-string">'not-allowed'</span>); }); });</span><span class="hljs-tag"></<span class="hljs-title">script</span>></span><span class="hljs-tag"></<span class="hljs-title">head</span>></span><span class="hljs-tag"><<span class="hljs-title">body</span>></span> <span class="hljs-tag"><<span class="hljs-title">div</span> <span class="hljs-attribute">class</span>=<span class="hljs-value">"captcha-box"</span>></span> <span class="hljs-tag"><<span class="hljs-title">input</span> <span class="hljs-attribute">type</span>=<span class="hljs-value">"text"</span> <span class="hljs-attribute">id</span>=<span class="hljs-value">"mobile"</span> <span class="hljs-attribute">maxlength</span>=<span class="hljs-value">"11"</span> <span class="hljs-attribute">placeholder</span>=<span class="hljs-value">"请输入手机号码"</span>></span> <span class="hljs-tag"><<span class="hljs-title">input</span> <span class="hljs-attribute">type</span>=<span class="hljs-value">"button"</span> <span class="hljs-attribute">id</span>=<span class="hljs-value">"getting"</span> <span class="hljs-attribute">value</span>=<span class="hljs-value">"获取验证码"</span>></span> <span class="hljs-tag"></<span class="hljs-title">div</span>></span><span class="hljs-tag"></<span class="hljs-title">body</span>></span><span class="hljs-tag"></<span class="hljs-title">html</span>></span></code>
0 0
- jQuery插件实现“点击获取验证码后60秒内禁止重新获取(防刷新)”
- jQuery插件实现“点击获取验证码后60秒内禁止重新获取(防刷新)”
- Jquery插件 防刷新倒计时 “点击获取验证码后60秒内禁止重新获取
- Jquery插件 防刷新倒计时 “点击获取验证码后60秒内禁止重新获取
- Jquery插件实现点击获取验证码后60秒内禁止重新获取
- Jquery获取手机验证码后60秒内禁止重新获取 简单例子
- Android 实现点击按钮获取验证码 60秒后重新获取效果
- Android 实现点击按钮获取验证码 60秒后重新获取效果
- Android 实现点击按钮获取验证码 60秒后重新获取效果
- Android点击获取验证码60秒后重新获取验证码
- js实现按钮点击60秒后重新启用(重新发送验证码)
- 实现60秒后获取验证码
- 点击 获取验证码 后,btn上显示 60秒 倒计时
- iOS 简单实现重新获取验证码并倒计时60秒
- 无刷新重新获取验证码 php
- 三种方法使用jquery获取验证码倒计时,并设置防重复点击
- 获取验证码按钮,点击后倒计时功能的实现
- 点击验证码重新刷新
- Activiti 接收任务(receivetask)
- 基础算法题(1) - 数字、模拟
- 补间动画(Tween)
- C语言union关键字
- oj:深搜+回溯(2)
- jQuery插件实现“点击获取验证码后60秒内禁止重新获取(防刷新)”
- Makefile 使用总结
- matlab中用到的randperm函数
- 8.10号的Java作业
- NOSQL数据库
- MVC Action Filter
- |Tyvj|NOIP2004|堆|P3301 最小函数值
- 设计模式总结之Strategy Pattern(策略模式)
- ubuntu 安装crt