gpt4 book ai didi

javascript - 点击后超时 JavaScript 函数

转载 作者:行者123 更新时间:2023-12-03 07:20:43 26 4
gpt4 key购买 nike

我已将网站上的 iframe 替换为 AJAX。现在好多了,速度也快了很多。人们可以点击刷新按钮来刷新动态区域。

我正在使用这个函数:

function djrefresh() {
$('#dj_status').load('inc/dj_status_frame.php');
$('#djbanner').load('inc/djbanner.php');
$('#djknopjes').load('inc/dj_knopjes_frame.php');
$('#djzegt').load('inc/dj_zegt_frame.php');
$('#djfooter').load('inc/footer_frame.php');
$('#berichtenbalkframe').load('inc/berichtenbalk_frame.php');
}

工作得很好,但我的网站需要一次加载很多东西。我希望用户能够单击一次并获得 30 秒的超时。

...或者如果您有更好的想法请告诉我。我不希望用户使用我自己的脚本对我的网站进行 DDOS。提前致谢。

最佳答案

更改网站架构可能是最好的选择,但如果没有更多信息,很难给出任何建议。无论如何,要限制对 djrefresh 的调用,您可以使用去抖函数。 UnderscoreJS 包含该函数,或者您可以自己编写一个。

function debounce(func, wait, immediate) {
var timeout;
return function() {
var context = this, args = arguments;
var later = function() {
timeout = null;
if (!immediate) func.apply(context, args);
};
var callNow = immediate && !timeout;
clearTimeout(timeout);
timeout = setTimeout(later, wait);
if (callNow) func.apply(context, args);
};
};

这取自https://davidwalsh.name/javascript-debounce-function (我个人用过很多次)。
这里假设“刷新按钮”是页面的按钮,而不是浏览器刷新的按钮。
编辑:如果您的网站上确实有刷新按钮,那么在单击该按钮后将其禁用 30 秒会更简单。

关于javascript - 点击后超时 JavaScript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36227846/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com