最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

jQuery实现倒计时及短信倒计时功能的实现代码

来源:懂视网 责编:小采 时间:2020-11-27 20:03:56
文档

jQuery实现倒计时及短信倒计时功能的实现代码

jQuery实现倒计时及短信倒计时功能的实现代码:本文主要和大家分享jQuery实现倒计时功能以及jQuery实现发送短信倒计时功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能帮助到大家。在实际运用中,经常会使用到倒计时的效果。以下代码利用jQuery实现了一个倒计时计时器。<!DOCT
推荐度:
导读jQuery实现倒计时及短信倒计时功能的实现代码:本文主要和大家分享jQuery实现倒计时功能以及jQuery实现发送短信倒计时功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能帮助到大家。在实际运用中,经常会使用到倒计时的效果。以下代码利用jQuery实现了一个倒计时计时器。<!DOCT

本文主要和大家分享jQuery实现倒计时功能以及jQuery实现发送短信倒计时功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能帮助到大家。

在实际运用中,经常会使用到倒计时的效果。以下代码利用jQuery实现了一个倒计时计时器。

<!DOCTYPE html> 
<html> 
 <head> 
 <meta charset="UTF-8"> 
 <title>jquery倒计时实现</title> 
 <style type="text/css"> 
 .shop_list ul li{ 
 display: inline-block; 
 list-style: none; 
 width: 300px; 
 } 
 </style> 
 </head> 
 <body> 
 <p class="shop_list" id="shop_list"> 
 <ul> 
 <li> 
 <img src="img/index/zixun1.jpg"/> 
 <p class="listItem"> 
 <h5>小米手机 Note 顶配版</h5> 
 <p>全网通 香槟金 移动联通<br/>双4G手机 双卡双待</p> 
 <em>¥2998<i>起</i></em> 
 <span class="time" data-starttime="1445982375" data-endtime="1446350400"></span> 
 </p> 
 </li> 
 <li> 
 <img src="img/index/zixun1.jpg"/> 
 <p class="listItem"> 
 <h5>小米手机 Note 顶配版</h5> 
 <p>全网通 香槟金 移动联通<br/>双4G手机 双卡双待</p> 
 <em>¥2998<i>起</i></em> 
 <span class="time" data-starttime='1445982375' data-endtime='1446350400'></span> 
 </p> 
 </li> 
 </ul> 
 </p> 
 </body> 
 <script type="text/javascript" src="js/lib/jquery-1.10.1.min.js" ></script> 
 <script type="text/javascript"> 
 $(function(){ 
 //找到商品列表以及时间显示span 
 var abj = $("#shop_list"), 
 timeObj = abj.find('.time'); 
 //获取开始时间 
 var starttime = timeObj.data('starttime'); 
 
 // 定时器函数 
 function actionDo(){ 
 return setInterval(function(){ 
 timeObj.each(function(index, el) { 
 //surplusTime为活动剩余开始时间 
 var t = $(this), 
 surplusTime = t.data('endtime') -starttime; 
 //若活动剩余开始时间小于0,则说明活动已开始 
 if (surplusTime <= 0) { 
 t.html("活动已经开始"); 
 } else{ 
 //否则,活动未开始,将剩余的时间转换成年,月,日,时,分,秒的形式 
 var year = surplusTime/(24*60*60*365), 
 showYear = parseInt(year), 
 month = (year-showYear)*12, 
 showMonth = parseInt(month), 
 day = (month-showMonth)*30, 
 showDay = parseInt(day), 
 hour = (day-showDay)*24, 
 showHour = parseInt(hour), 
 minute = (hour-showHour)*60, 
 showMinute = parseInt(minute), 
 seconds = (minute-showMinute)*60, 
 showSeconds = parseInt(seconds); 
 t.html(""); 
 //设置
输出到HTML的格式并输出到HTML if (showYear>0) { t.append("<span>"+showYear+"年</span>") }; if (showMonth>0) { t.append("<span>"+showMonth+"月</span>") }; if (showDay>0) { t.append("<span>"+showDay+"天</span>") }; if (showHour>=0) { t.append("<span>"+showHour+"小时</span>") }; if (showMinute>=0) { t.append("<span>"+showMinute+"分钟</span>") }; if (showSeconds>=0) { t.append("<span>"+showSeconds+"秒</span>") }; }; }); starttime++; },1000); // 设定执行或延时时间 }; // 执行它 actionDo(); }); </script> </html>

jQuery短信倒计时功能的实现方法

1.点击按钮的时候,可以进行倒计时,倒计时自定义.2.当接收短信失败后,倒计时停止,可点击重新发送短信.3.点击的元素支持一般标签和input标签。看似很复杂其实实现代码很简单,下面小编给大家分享下实现代码,需要的朋友参考下吧。

实现的主要功能如下:

1.点击按钮的时候,可以进行倒计时,倒计时自定义。

2.当接收短信失败后,倒计时停止,可点击重新发送短信。

3.点击的元素支持一般标签和input标签。

html代码:

<input type="button" class="sameBtn btnCur" value="发送验证码"/>
<p class="sameBtn btnCur2">发送验证码</p>

css代码:

body{padding:100px;text-align: center;}
.sameBtn{display: inline-block;font-size:12px;cursor:pointer;width:76px;height:25px;line-height: 25px;text-align: center;border:0;background: #3186df;color:#fff;}
.sameBtn.current{background: #b1b1b1;}

js代码:

 
//短信倒计时功能
/**使用方式如下:
 * $(".btnCur").CountDownF({
 * time:120,
 * resetWords:'重新发送', //文字定义
 * cnSeconds:'s',//倒计时中显示中文的秒,还是s
 * clickClass:'current', //点击后添加的class类
 * countState:true,
 * callback:function(){
 * setTimeout(function(){
 * //当发送失败后,可以立即清除倒计时与其状态
 * $(".btnCur").CountDownF('clearState');
 * },3000);
 * }
 * });
 *
 * */
;(function($,window,document,undefined){
 var pluginName = 'CountDownF',
 defaluts = {
 time:120,
 resetWords:'重新发送', //文字定义
 cnSeconds:'s',//倒计时中显示中文的秒,还是s
 clickClass:'current', //点击后添加的class类
 countState:true //是否可以倒计时,true可以倒计时,false不能进行倒计时
 }
 function Count(element,options){
 this.element = element;
 this.$element = $(this.element);
 this.state = true;
 this.settings = $.extend({},defaluts,options);
 this.number = this.settings.time;
 this.init();
 }
 Count.prototype = {
 init:function(){
 var self = this;
 self.$element.on('click',function(){
 if(self.state && self.settings.countState){
 self.state = false;
 if(self.settings.countState){
 self._count();
 }
 if(self.settings.callback){
 self.settings.callback();
 }
 }
 });
 },
 //倒计时函数
 _count:function(){
 var self = this;
 if(self.number == 0){
 self._clearInit();
 }else{
 if(self.number < 10){
 //如果当前元素是input,使用val赋值
 this.$element.attr('type') ? this.$element.val('0' + self.number + self.settings.cnSeconds) : this.$element.html('0' + self.number + self.settings.cnSeconds); 
 }else{
 this.$element.attr('type') ? this.$element.val(self.number + self.settings.cnSeconds) : this.$element.html(self.number + self.settings.cnSeconds);
 }
 self.number--;
 this.$element.addClass(self.settings.clickClass);
 self.clearCount = setTimeout(function(){
 self._count();
 },1000);
 }
 },
 //修改是否可发送短信验证码倒计时状态
 change:function(state){
 var self = this;
 self.settings.countState = state;
 },
 //置为初始状态
 _clearInit:function(){
 var self = this;
 self.$element.removeClass(self.settings.clickClass);
 self.$element.attr('type') ? self.$element.val(self.settings.resetWords) : self.$element.html(self.settings.resetWords);
 clearTimeout(self.clearCount);
 self.number = self.settings.time;
 self.state = true;
 },
 //清除倒计时进行状态
 clearState:function(){
 var self = this;
 self._clearInit();
 }
 };
 $.fn.CountDownF = function(options){
 var args = arguments;
 if(options === undefined || typeof options ==='object' ){
 return this.each(function(){
 if(!$.data(this,'plugin' + pluginName)){
 $.data(this,'plugin' + pluginName,new Count(this,options));
 }
 });
 }
 else if(typeof options === 'string' && options !== 'init'){
 var returns;
 this.each(function(){
 var data = $.data(this,'plugin' + pluginName);
 if(data instanceof Count && typeof data[options] === 'function'){
 returns = data[options].apply(data,Array.prototype.slice.call(args,1));
 }
 if(options === 'destory'){
 $.data(this, 'plugin' + pluginName, null);
 }
 });
 return returns !== undefined ? returns : this;
 }
 else{
 $.error('Method' + options + 'does not exist on jQuery.CountDownF');
 }
 }
})(jQuery,window,document);

调用方式:

$(function(){
 $(".btnCur").CountDownF({
 time:120,
 countState:true,
 callback:function(){
 setTimeout(function(){
 $(".btnCur").CountDownF('clearState');
 },3000);
 }
 });
 $(".btnCur2").CountDownF({
 time:50,
 countState:true,
 cnSeconds:'秒',
 callback:function(){
 setTimeout(function(){
 $(".btnCur2").CountDownF('clearState');
 },5000);
 }
 });
})

文档

jQuery实现倒计时及短信倒计时功能的实现代码

jQuery实现倒计时及短信倒计时功能的实现代码:本文主要和大家分享jQuery实现倒计时功能以及jQuery实现发送短信倒计时功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能帮助到大家。在实际运用中,经常会使用到倒计时的效果。以下代码利用jQuery实现了一个倒计时计时器。<!DOCT
推荐度:
标签: 功能 短信 倒计时
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top