刷新后如何使按钮禁用10分钟?

时间:2018-08-17 15:18:27

标签: javascript

我要在单击按钮后禁用按钮10分钟,即使刷新,它也将保持禁用状态。我如何在javascript或jquery中实现它?我似乎无法为我的代码做到这一点。

  <script type="text/javascript" src="https://code.jquery.com/jquery-3.3.1.min.js">
       $(document).ready(function(){
   var limit = 10*60*1000; 
                   btn.attr("disabled", true);
                btn.css('cursor','not-allowed');
                message.text('wrong answer, please wait 10 minutes before trying again');
   var timer = setTimeout(disableMyButton, limit);

   function disableMyButton(){
              btn.removeAttr("disabled");
                    message.text('');
      localStorage.setItem("isMyButtonDisabled", "true");
   }

   if(localStorage.getItem("isMyButtonDisabled") == "true"){
               message.text('');
               btn.removeAttr("disabled");

     window.clearTimeout(timer);
   }
});
 </script>

1 个答案:

答案 0 :(得分:2)

您有正确的想法。使用localStorage,但将时间戳记放在此处。然后,在加载页面时,从localStorage获取时间戳。如果localStorage时间戳和现在的时间戳之间的时差超过10分钟,请启用该按钮。如果没有,请适当设置超时时间。唯一的问题是保持localStorage干净。确保在10分钟结束时清除时间戳记。