一个页面多个倒计时 js

jQuery倒计时(CountDown)小插件

可以用于一个页面多个倒计时,调用也非常方便。

 
  
  1. /*
  2. jquery.countdown.js
  3. */
  4. (function($){
  5. var countdown = function(item, config)
  6. {
  7. var seconds = parseInt($(item).attr(config.attribute));
  8. var timer = null;
  9. var doWork = function()
  10. {
  11. if(seconds >= 0)
  12. {
  13. if(typeof(config.callback) == "function")
  14. {
  15. var data = {
  16. total : seconds ,
  17. second : Math.floor(seconds % 60) ,
  18. minute : Math.floor((seconds / 60) % 60) ,
  19. hour : Math.floor((seconds / 3600) % 24) ,
  20. day : Math.floor(seconds / 86400)
  21. };
  22. config.callback.call(item, seconds, data, item);
  23. }
  24. seconds --;
  25. }else{
  26. window.clearInterval(timer);
  27. }
  28. }
  29. timer = window.setInterval(doWork, 1000);
  30. doWork();
  31. };
  32. var main = function()
  33. {
  34. var args = arguments;
  35. var config = { attribute : 'data-seconds', callback : null };
  36. if(args.length == 1)
  37. {
  38. if(typeof(args[0]) == "function") config.callback = args[0];
  39. if(typeof(args[0]) == "object") $.extend(config, args[0]);
  40. }else{
  41. config.attribute = args[0];
  42. config.callback = args[1];
  43. }
  44. $(this).each(function(index, item){
  45. countdown.call(item, item, config);
  46. });
  47. };
  48. $.fn.countdown = main;
  49. })(jQuery);

使用实例:

 
  
  1. type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js">
  2. type="text/javascript" src="jquery.countdown.js">
  3. type="text/javascript">
  4. $(function(){
  5. $('ul').countdown(function(s, d){
  6. var items = $(this).find('span');
  7. items.eq(0).text(d.total);
  8. items.eq(1).text(d.second);
  9. items.eq(2).text(d.minute);
  10. items.eq(3).text(d.hour);
  11. items.eq(4).text(d.day);
  12. });
  13. });
  14. data-seconds="3344"> //值3344 为总共的秒数
  15. 总共-
  16. -
  17. -
  18. -
  19. -
  20. data-seconds="97545">
  21. 总共-
  22. -
  23. -
  24. -
  25. -
  26. data-seconds="10">
  27. 总共-
  28. -
  29. -
基本上我们从jquery上现在有这个 jquery.countdown.js 名字是一样的,但是我看里面的内容是不一样的。因而我用的是以上代码。 (至于从官网上下载的jquery.countdown.js是否能用。本人试的时候确实是不行。直接用以上代码即可实现一个页面多个倒计时。

你可能感兴趣的:(一个页面多个倒计时 js)