我正在寻找有关 jQuery 的 .delay 函数的帮助。我的网站上有一个弹出表单,我想在 2-3 分钟之间随机弹出。我了解如何使用 Math.random(),但我不明白如何使用它来生成 120000 毫秒到 180000 毫秒之间的数字。这是我当前设置的两分钟代码:
$(document).ready(function() {
$('#popup-main').hide().delay(120000).fadeIn(500)
});
对此的任何帮助将不胜感激!
我正在寻找有关 jQuery 的 .delay 函数的帮助。我的网站上有一个弹出表单,我想在 2-3 分钟之间随机弹出。我了解如何使用 Math.random(),但我不明白如何使用它来生成 120000 毫秒到 180000 毫秒之间的数字。这是我当前设置的两分钟代码:
$(document).ready(function() {
$('#popup-main').hide().delay(120000).fadeIn(500)
});
对此的任何帮助将不胜感激!
一种方法:
$(document).ready(function() {
var min = 120000, max = 180000;
var delay = Math.floor(Math.random() * (max - min) + min);
$('#popup-main').hide().delay(delay).fadeIn(500)
});
或者,如果您想要更多偶数:
var min = 12, max = 18;
var delay = Math.floor(Math.random() * (max - min) + min) * 10000;
您了解 Math.random(),因此您知道它返回一个介于 0 和 1 之间的值。如果将该值乘以最小值 (120000),您将得到一个介于 0 和 120000 之间的值。如果将其乘以 180000 ,你会得到一个介于 0 和 180000 之间的值。如果你将它乘以 180000 - 120000,你会得到一个介于 0 和 60000 之间的值。然后你可以把它加到 120000 上,你会得到一个你想要的数字范围。
这是一种方式;您的“基础”为 120000(两分钟),您只需随机化其余的 60000(一分钟)。
$(document).ready(function() {
var delay = Math.floor(Math.random() * 60000) + 120000;
$('#popup-main').hide().delay(delay).fadeIn(500)
});