title: Multiple day(s) left javascript timer for multiple time zones
body: <p>What I am trying to accomplish is multiple countdowns with different expiration dates. I have a code snippet from Codepen, I used as a starting point that works for just one countdown. I am also hoping that no matter whether the viewer is in California, or Georgia the expiration will know what the time zone is. I added the suggested getTimezoneOffset() to deal with different time zones. Which causes the countdown to multiply the days remaining to an absurd number that is 50 years in the future. When I remove that, it is fine. So I have not figured out how to implement that suggestion correctly. Through much trial and error I did successfully create a duplicate countdown with a different expiration date. The only thing I don't understand still is how to implement getTimezoneOffset() so that it does not display 17,893 and 17,883 days (50 years worth of days). I am a trial and error javascript modifier. I try stuff until something is no longer broken. </p>
  
  <pre><code>var countDownDate = new Date("DEC 27, 2018").getTime();
  var countDownDate2 = new Date("DEC 17, 2018").getTime();
  
  
  // COPY FEED
  var data = {
        // OFFER 1
        one:     "Offer One",
        two:     "Free Product",
      three:     "Today Only",
       // OFFER 2
       four:     "Offer Two",
       five:     "Free Pickup",
        six:     "&lt;span id='daysLeft'&gt;&lt;/span&gt; &lt;span id='plural'&gt;&lt;/span&gt;",
    seven:     "Expires: Dec. 27, 2018",
      // OFFER 3
  
      eight:     "Offer  Three",
      nine:     "&lt;span id='daysLeft2'&gt;&lt;/span&gt; &lt;span id='plural2'&gt;&lt;/span&gt;",
  
       ten:    "Expires: Dec. 17, 2018",
  };
  
  // LOOP THROUGH KEYS TO GET ALL ELEMENT IDs &amp; CREATE VARIABLES
  function bannerFunc() {
      for (key in data) {
          if (data.hasOwnProperty(key)) {
              var value = data[key];
              var key = document.getElementById('" + key + "');
          }
      }
  
      // ASSIGN OBJECT VALUES TO VARIABLES
        one.innerHTML = data.one;
        two.innerHTML = data.two;
      three.innerHTML = data.three;
       four.innerHTML = data.four;
       five.innerHTML = data.five;
        six.innerHTML = data.six;
      seven.innerHTML = data.seven;
      eight.innerHTML = data.eight;
       nine.innerHTML = data.nine;
       ten.innerHTML = data.ten;
  
      // DATE CODE
  
  
      var x = setInterval(function() {
          var now = new Date().getTimezoneOffset(),
              amountLeft = countDownDate - now,
              days = Math.floor(amountLeft / (1000 * 60 * 60 * 24) + 1),
              plural = document.getElementById('plural');
              plural.innerHTML = days + ' Days Left';
              if( days &lt; 2 &amp;&amp; days &gt; 0 ){
                  plural.innerHTML = days + ' Day Left';
              }
              if( days &lt;= 0 ){
                  plural.innerHTML = 'Expired';
              }
  
  
          var now = new Date().getTimezoneOffset(),
              amountLeft = countDownDate2 - now,
              days = Math.floor(amountLeft / (1000 * 60 * 60 * 24) + 1),
              plural = document.getElementById('plural2');
              plural2.innerHTML = days + ' Days Left';
              if( days &lt; 2 &amp;&amp; days &gt; 0 ){
                  plural2.innerHTML = days + ' Day Left';
              }
              if( days &lt;= 0 ){
                  plural2.innerHTML = 'Expired';
  
   }
      }, 1000);
  }
  bannerFunc();
  </code></pre>