我在这里找不到这个问题,虽然看起来很简单。
当我知道开始和结束位置时,我想要计算总距离的百分比,即:
function getPercentage(startpos,endpos,currentpos)
{
var distance = endpos-startpos;
return (currentpos/distance)*100;
}
很容易,但是如果起始点或当前位置在负轴上,那么咖啡不起作用的时间已经很晚了。
startpos = -734;
endpos = 65;
currentpos = -38;
值得注意的是,任何位置都可能在任何一点都处于正轴或负轴。
当前距离的百分比是多少.... 任何人都可以把我的骨头扔到凌晨1点: - )
答案 0 :(得分:7)
您也忘了翻译当前位置。
function getPercentage(startpos, endpos, currentpos)
{
var distance = endpos - startpos;
var displacement = currentpos - startpos;
return (displacement / distance) * 100;
}
答案 1 :(得分:1)
简单的做法是偏移位置,使startpos变为零:
endpos = endpos - startpos;
currentpos = currentpos - startpos;
var perc = currentpos/endpos*100;