【问题标题】:SinonJS fake timer does not work with QUnitSinonJS 假计时器不适用于 QUnit
【发布时间】:2011-10-16 04:58:42
【问题描述】:

我正在使用 SinonJS 和 QUnit 运行以下代码:

var clock = this.sandbox.useFakeTimers();
var el = jQuery("<div></div>");
el.appendTo(document.body);

el.animate({ height: "200px", width: "200px" });
clock.tick(1000);

equals("200px", el.css("height"));
equals("200px", el.css("width"));

但是测试失败了,看起来 jQuery 使用的是真时钟而不是假时钟。

我使用的是 Chrome 12.0.742.122。

有什么想法吗?

谢谢

【问题讨论】:

标签: javascript jquery qunit sinon


【解决方案1】:

jQuery 正在使用 window.webkitRequestAnimationFrame 或 window.mozRequestAnimationFrame 而不是 setInterval。

如果在加载 jQuery 之前将 window.mozRequestAnimationFrame 设置为 false,它将使用 setTimeout,SinonJS 将正常工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-27
    • 1970-01-01
    • 2020-07-07
    • 2013-12-25
    • 1970-01-01
    • 1970-01-01
    • 2021-08-07
    • 2017-07-20
    相关资源
    最近更新 更多