我如何设置间隔而不是第一次加载,而是第二次加载和之后的加载
How can i set interval not on the first load but second load and load after that
我正在使用 setInterval
作为我的 recaptcha javascript 代码,因为我的大部分表单都很长,令牌将过期,用户需要重新填写表单。
我喜欢代码现在的样子,除了加载令牌还需要 10 秒。我还有 1 个输入供用户填写,可以在 10 秒内提交,然后会出现 recaptcha 错误。
我怎样才能让下面的代码在没有 setInterval
的情况下第一次加载,并且在第一次加载后每次都以 10 秒的间隔加载?
感谢您的宝贵时间。
setInterval(function(){
grecaptcha.ready(function() {
grecaptcha.execute('<?php echo RECAPTCHA_SITE_KEY; ?>', {action: 'this_form'}).then(function(token) {
$('#token').val(token);
$('#action').val('this_form');
});
});
}, 10000);
How can i let the code below load the first time without setInterval and EVERY time after the first time to be with 10 seconds interval?
您可以为此使用 setTimeout
。试一试:
function loadCaptcha() {
grecaptcha.ready(function() {
grecaptcha.execute('<?php echo RECAPTCHA_SITE_KEY; ?>', {action: 'this_form'}).then(function(token) {
$('#token').val(token);
$('#action').val('this_form');
});
});
}
$(document).ready(function() {
loadCaptcha();
setTimeout(function() {
loadCaptcha();
setInterval(loadCaptcha, 10 * 1000); // fire every 10 sec
}, 10 * 1000); // fire only one time after 10 sec
});
我正在使用 setInterval
作为我的 recaptcha javascript 代码,因为我的大部分表单都很长,令牌将过期,用户需要重新填写表单。
我喜欢代码现在的样子,除了加载令牌还需要 10 秒。我还有 1 个输入供用户填写,可以在 10 秒内提交,然后会出现 recaptcha 错误。
我怎样才能让下面的代码在没有 setInterval
的情况下第一次加载,并且在第一次加载后每次都以 10 秒的间隔加载?
感谢您的宝贵时间。
setInterval(function(){
grecaptcha.ready(function() {
grecaptcha.execute('<?php echo RECAPTCHA_SITE_KEY; ?>', {action: 'this_form'}).then(function(token) {
$('#token').val(token);
$('#action').val('this_form');
});
});
}, 10000);
How can i let the code below load the first time without setInterval and EVERY time after the first time to be with 10 seconds interval?
您可以为此使用 setTimeout
。试一试:
function loadCaptcha() {
grecaptcha.ready(function() {
grecaptcha.execute('<?php echo RECAPTCHA_SITE_KEY; ?>', {action: 'this_form'}).then(function(token) {
$('#token').val(token);
$('#action').val('this_form');
});
});
}
$(document).ready(function() {
loadCaptcha();
setTimeout(function() {
loadCaptcha();
setInterval(loadCaptcha, 10 * 1000); // fire every 10 sec
}, 10 * 1000); // fire only one time after 10 sec
});