如何在javascript中设置时间延迟

新手上路,请多包涵

我在我的网站上有一段 js 来切换图像,但是当您第二次单击图像时需要延迟。延迟应为 1000 毫秒。所以你会点击 img.jpg 然后 img_onclick.jpg 会出现。然后单击 img_onclick.jpg 图像,在 img.jpg 再次显示之前应该有 1000 毫秒的延迟。

这是代码:

jQuery(document).ready(function($) {

    $(".toggle-container").hide();
    $(".trigger").toggle(function () {
        $(this).addClass("active");
        $(".trigger").find('img').prop('src', 'http://localhost:8888/images/img_onclick.jpg');
    }, function () {
        $(this).removeClass("active");
        $(".trigger").find('img').prop('src', 'http://localhost:8888/images/img.jpg');
    });
    $(".trigger").click(function () {
        $(this).next(".toggle-container").slideToggle();
    });
});

原文由 Blue Orange 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.1k
2 个回答

使用 setTimeout()

 var delayInMilliseconds = 1000; //1 second

 setTimeout(function() {
 //your code to be executed after 1 second
 }, delayInMilliseconds);

如果您想在没有 setTimeout 的情况下执行此操作:请参阅 此问题

原文由 HIRA THAKUR 发布,翻译遵循 CC BY-SA 3.0 许可协议

setTimeout(function(){

}, 500);

将您的代码放在 { }

500 = 0.5 秒

2200 = 2.2 秒

等等

原文由 maudulus 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏