# master-addons/3.1.2/assets/js/addons/ma-countdown-timer.js

Master Addons for Elementor – Elementor Addons, Widgets, Mega Menu Builder, Popup Builder, Widget Builder &amp; Template Kits, version 3.1.2. 57 lines.

- Page: https://pluginprobe.com/plugins/master-addons/3.1.2/code/assets/js/addons/ma-countdown-timer.js
- Raw: https://pluginprobe.com/plugins/master-addons/3.1.2/raw/assets/js/addons/ma-countdown-timer.js
- Modified: 2026-03-08T11:32:50+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/master-addons/3.1.2/code/assets/js/addons/ma-countdown-timer.js#L10-L20`.

```javascript
(function(){
(function($, elementor) {
  "use strict";
  var JLTMA_CountdownTimer = function($scope, $2) {
    var $countdownWidget = $scope.find(".jltma-widget-countdown");
    $2.fn.MasterCountDownTimer = function() {
      var $wrapper = $2(this).find(".jltma-countdown-wrapper"), data = {
        year: $wrapper.data("countdown-year"),
        month: $wrapper.data("countdown-month"),
        day: $wrapper.data("countdown-day"),
        hour: $wrapper.data("countdown-hour"),
        min: $wrapper.data("countdown-min"),
        sec: $wrapper.data("countdown-sec")
      }, isInfinite = $wrapper.data("countdown-infinite") === "yes", targetDate = new Date(data.year, data.month, data.day, data.hour, data.min, data.sec);
      var $year = $wrapper.find(".jltma-countdown-year"), $month = $wrapper.find(".jltma-countdown-month"), $day = $wrapper.find(".jltma-countdown-day"), $hour = $wrapper.find(".jltma-countdown-hour"), $min = $wrapper.find(".jltma-countdown-min"), $sec = $wrapper.find(".jltma-countdown-sec");
      var countdownInterval = setInterval(function() {
        var currentTime = /* @__PURE__ */ new Date();
        var diffTime = (Date.parse(targetDate) - Date.parse(currentTime)) / 1e3;
        if (diffTime <= 0) {
          $year.text(0);
          $month.text(0);
          $day.text(0);
          $hour.text(0);
          $min.text(0);
          $sec.text(0);
          clearInterval(countdownInterval);
          return;
        }
        var totalSeconds = diffTime;
        var years = Math.floor(totalSeconds / 31536e3);
        totalSeconds %= 31536e3;
        var months = Math.floor(totalSeconds / 2592e3);
        totalSeconds %= 2592e3;
        var days = Math.floor(totalSeconds / 86400);
        totalSeconds %= 86400;
        var hours = Math.floor(totalSeconds / 3600);
        totalSeconds %= 3600;
        var minutes = Math.floor(totalSeconds / 60);
        var seconds = Math.floor(totalSeconds % 60);
        $year.text(years);
        $month.text(months);
        $day.text(days);
        $hour.text(hours);
        $min.text(minutes);
        $sec.text(seconds);
      }, 1e3);
    };
    $countdownWidget.each(function() {
      $2(this).MasterCountDownTimer();
    });
  };
  $(window).on("elementor/frontend/init", function() {
    elementorFrontend.hooks.addAction("frontend/element_ready/ma-el-countdown-timer.default", JLTMA_CountdownTimer);
  });
})(jQuery, window.elementorFrontend);
})();

```
