1

在我的游戏中,我添加了一个雪花图标来将时间冻结 3 秒。我已将此添加到脚本中

$(".character").click(function() {
    if ($(this).hasClass("freeze")) {
    $('#timer').delay(3000);
}

任何想法为什么它不起作用?

这是一个小提琴.. http://jsfiddle.net/pUwKb/30/

4

1 回答 1

3

你误解了延迟。您必须清除倒计时间隔,并设置超时,之后将再次激活倒计时间隔

$(".character").click(function() {
    if ($(this).hasClass("freeze")) {
    window.clearInterval(countdown);
    window.setTimeout(function(){
      countdown = window.setInterval(...)
    }, 3000);
}

你必须命名函数才能这样做

至于$.delay它用于延迟 jQuery 动画的执行

于 2013-01-04T11:57:21.343 回答