因此,我正在修改Highcharts饼图,尝试执行以下操作:

function updateAngle( lastAngle ) {
    if ($("#container").highcharts() != null && $("#container").highcharts() != undefined) {
        var currentAngle = lastAngle;
        var destinationAngle = getAngle();
        if (currentAngle != destinationAngle) {
            currentAngle += 1;
            if (currentAngle > destinationAngle) {
                currentAngle = destinationAngle;
            }
            $("#container").highcharts().get('Series').update({
                endAngle: currentAngle
            });
            setTimeout(updateAngle, 1, currentAngle);
        }
    }
}


每次交互后,我都将1加到前一个角度,现在我读到setInterval / setTimeout在跳出时不支持浏览器,因为它不请求动画。我已经读过“ .queue”是可以为我工作的函数,但是我不确定如何将setTimeout方法转换为使用.queue。

最佳答案

在不活动的标签页中,超时的触发频率不超过每秒触发一次(1000 ms),但仍会触发。您的代码不会有任何问题。

10-02 16:48