我正在尝试使用D3版本2实现拖动惯性。
下载页面中的最新版本的d3(3.3.10)没有它,而pjanik已经修改了d3的版本 - http://bl.ocks.org/pjanik/raw/5872514/
无论如何,我如何在D3版本2中实现它?
一种非常原始的功能来实现这种感觉,但如果有人有任何建议,我会更喜欢优雅的配方,非常感谢:
function inertia(value) {
var remainder = value,
output,
drag = 0.3,
stepTime = 60
//var x = 0
var interval = setInterval(function() {
output = remainder * drag
//x += output
//console.log(x)
//jQuery('.logo').css('margin-left', x)
console.log(output)
remainder = remainder - output
/*a hack to clear when value is small*/
if (output < value * .005)
clearInterval(interval)
}, stepTime)
}
//Any integer to be split for steps, can be distance, time, any value!
inertia(100)