iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > html >如何使用jQuery插件开发发送短信倒计时功能
  • 437
分享到

如何使用jQuery插件开发发送短信倒计时功能

2024-04-02 19:04:59 437人浏览 薄情痞子
摘要

小编给大家分享一下如何使用Jquery插件开发发送短信倒计时功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!实现的主要功能如下

小编给大家分享一下如何使用Jquery插件开发发送短信倒计时功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

实现的主要功能如下:

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

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

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

html代码:

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

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代码:

//短信倒计时功能

;(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插件开发发送短信倒计时功能”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网html频道!

--结束END--

本文标题: 如何使用jQuery插件开发发送短信倒计时功能

本文链接: https://www.lsjlt.com/news/72238.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何使用jQuery插件开发发送短信倒计时功能
    小编给大家分享一下如何使用jQuery插件开发发送短信倒计时功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!实现的主要功能如下...
    99+
    2024-04-02
  • js如何实现短信发送倒计时功能
    这篇文章将为大家详细讲解有关js如何实现短信发送倒计时功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。本文实例为大家分享了js短信发送倒计时的具体代码,供大家参考,具体...
    99+
    2024-04-02
  • jQuery如何实现倒计时重新发送短信验证码功能
    小编给大家分享一下jQuery如何实现倒计时重新发送短信验证码功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!具体如下:<...
    99+
    2024-04-02
  • 微信小程序中如何实现发送短信倒计时功能
    这篇文章主要介绍微信小程序中如何实现发送短信倒计时功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!点击后代码<form bindsubmit="formS...
    99+
    2024-04-02
  • 如何使用PHP开发微信小程序的倒计时功能?
    如何使用PHP开发微信小程序的倒计时功能?随着移动互联网的发展,微信小程序已经成为了人们生活中不可或缺的一部分,越来越多的开发者也开始关注微信小程序的开发。而倒计时功能作为一种常用的功能,在微信小程序中也是十分常见的。本文将介绍如何使用PH...
    99+
    2023-10-26
    PHP 微信小程序 倒计时
  • 如何在PHP中实现短信发送功能
    随着移动互联网技术的普及,短信成为了一种广泛应用的通信手段,需要在网站或应用中实现短信发送功能。PHP作为一种广泛应用于Web开发的编程语言,在实现短信发送功能时也是十分方便的。本文将介绍如何在PHP中实现短信发送功能。选择短信服务商在开始...
    99+
    2023-05-20
    PHP 实现 短信发送
  • 使用Java第三方实现发送短信功能
    目录一、介绍二、使用步骤1. 平台注册2. 短信签名和短信模板2.1 设置签名文字短信 -> 短信设置 -> 签名管理 -> 添加新的签名2.2 设置模板文字短信 ...
    99+
    2023-03-24
    Java第三方 Java发送短信 第三方发送短信
  • Android如何使用RxBinding与RxJava2实现短信验证码倒计时功能
    这篇文章给大家分享的是有关Android如何使用RxBinding与RxJava2实现短信验证码倒计时功能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。场景:注册账号页面时,我们点击按钮发送验证码,在等待验证码时...
    99+
    2023-05-30
    android
  • Java如何实现发送短信验证码功能
    小编给大家分享一下Java如何实现发送短信验证码功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一个发送短信验证码的功能,使用的是信易通的短信平台接口,然后在J...
    99+
    2023-05-30
    java
  • 使用阿里云数据库实现短信发送功能
    本文将介绍如何使用阿里云数据库来实现短信发送功能。阿里云数据库是一个强大而易用的云数据库服务,可以提供稳定、安全的数据存储和访问。我们将使用阿里云数据库的API来实现短信发送功能。 首先,我们需要在阿里云上创建一个数据库实例。在阿里云控制台...
    99+
    2023-11-10
    阿里 短信发送 功能
  • 怎么使用Java第三方实现发送短信功能
    本文小编为大家详细介绍“怎么使用Java第三方实现发送短信功能”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么使用Java第三方实现发送短信功能”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、介绍在项目开发...
    99+
    2023-07-05
  • SpringBoot如何实现发送邮件、发送微信公众号推送功能
    这篇文章主要介绍了SpringBoot如何实现发送邮件、发送微信公众号推送功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。SpringBoot实现发送邮件&emsp...
    99+
    2023-06-29
  • web开发中如何实现手机注册发送验证码倒计时
    这篇文章主要介绍了web开发中如何实现手机注册发送验证码倒计时,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。如下所示:()这里用的是inpu...
    99+
    2024-04-02
  • 如何使用Redis和Python开发实时消息推送功能
    如何使用Redis和Python开发实时消息推送功能随着实时通信的需求日益增长,开发实时消息推送功能变得越来越重要。在本文中,将介绍如何使用Redis和Python来实现这样的功能,同时提供具体的代码示例。一、什么是实时消息推送功能?实时消...
    99+
    2023-10-22
    Python redis 实时消息推送
  • 如何使用Perl实现邮件发送功能
    如何使用Perl实现邮件发送功能,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。use Net::SMTP_auth;$smtp = Net::SMTP_auth->new...
    99+
    2023-06-04
  • H5项目如何开发iOS插件功能
    这篇文章主要为大家展示了“H5项目如何开发iOS插件功能”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“H5项目如何开发iOS插件功能”这篇文章吧。 ...
    99+
    2024-04-02
  • 使用php开发Websocket,实现实时推送功能
    标题:使用PHP开发Websocket,实现实时推送功能Websocket是一种基于TCP协议的通信协议,在Web开发中,可以使用Websocket实现实时推送功能,以实现实时通信或实时更新数据的需求。在本文中,我们将使用PHP语言开发We...
    99+
    2023-12-09
  • 如何用PHP开发微信公众号的推送功能
    如何用PHP开发微信公众号的推送功能,需要具体代码示例微信公众号已经成为了现代社会中非常重要的一种社交媒体平台,许多企业、组织和个人都在微信公众号上展示自己的品牌和内容。在公众号中,推送功能是非常重要的一项功能,可以将最新的资讯、活动和优惠...
    99+
    2023-10-28
    PHP 微信公众号 推送功能
  • 如何使用shell脚本通过短信发送LOG归类号码发送情况
    这篇文章主要介绍了如何使用shell脚本通过短信发送LOG归类号码发送情况,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。代码如下:#!/bin/bash#telno ...
    99+
    2023-06-09
  • 如何使用Javascript插件开发
    这篇文章将为大家详细讲解有关如何使用Javascript插件开发,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。该怎样架构?对于架构这个概念,接触的比较少,我的理解,架构就...
    99+
    2024-04-02
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作