为按钮创建 cookie 并在 10 分钟后将其禁用
Create a cookie for a button and disable it after 10 minutes
所以我在这个页面上有一个主按钮,可以将您带到网站内的另一个页面。
所以我们有“/”和“/game”。进入 /game 后,会出现另一个 ID 为 #quest1 的按钮。一旦有人单击该按钮,就会为主按钮 (a.PlayNow) 设置一个计时器,使其变红 10 分钟。
问题是我的代码永远不会改变。
我完成了这项工作,但即使 10 分钟过去了,按钮也没有恢复到正常状态。任何帮助,将不胜感激。
这是代码:
$(function() {
var last = my_getcookie('lastClicked');
var current = Math.round(Date.now() / 1000);
$('#quest1').click(function(){
my_setcookie('lastClicked', current ,1,0);
});
if( last + 600 < current ) {
// 10 minutes over
$('a.PlayNow').attr('href','/game').css({'background':'#a7822f','cursor':'pointer'});
$('a.PlayNow').text('Play Crossroadz!');
} else {
// 10 minutes not over
$('a.PlayNow').removeAttr('href').css({'background':'#b34c4c','cursor':'not-allowed'});
$('a.PlayNow').text('Time not passed!');
}
});
我会通过使用计时器来解决这个问题...只需在有人单击您的按钮时调用 buttonPressed()
。
var timer;
function buttonPressed()
{
// make button red
timer = setInterval(restoreButton, 1000 * 60 * 10);
}
function restoreButton()
{
// make button normal again
clearInterval(timer);
}
所以我在这个页面上有一个主按钮,可以将您带到网站内的另一个页面。
所以我们有“/”和“/game”。进入 /game 后,会出现另一个 ID 为 #quest1 的按钮。一旦有人单击该按钮,就会为主按钮 (a.PlayNow) 设置一个计时器,使其变红 10 分钟。
问题是我的代码永远不会改变。
我完成了这项工作,但即使 10 分钟过去了,按钮也没有恢复到正常状态。任何帮助,将不胜感激。
这是代码:
$(function() {
var last = my_getcookie('lastClicked');
var current = Math.round(Date.now() / 1000);
$('#quest1').click(function(){
my_setcookie('lastClicked', current ,1,0);
});
if( last + 600 < current ) {
// 10 minutes over
$('a.PlayNow').attr('href','/game').css({'background':'#a7822f','cursor':'pointer'});
$('a.PlayNow').text('Play Crossroadz!');
} else {
// 10 minutes not over
$('a.PlayNow').removeAttr('href').css({'background':'#b34c4c','cursor':'not-allowed'});
$('a.PlayNow').text('Time not passed!');
}
});
我会通过使用计时器来解决这个问题...只需在有人单击您的按钮时调用 buttonPressed()
。
var timer;
function buttonPressed()
{
// make button red
timer = setInterval(restoreButton, 1000 * 60 * 10);
}
function restoreButton()
{
// make button normal again
clearInterval(timer);
}