spRandom中方向更改时更改spState

另一个游泳鱼问题;-)

有没有办法检测spRandom当前移动的方向? 这样我就可以将精灵的spState从1更改为2。

如果direction = left spState(1) – >如果direction = right spState(2),则Fish面朝左 – > Fish面朝右

希望你理解我的问题。 我还没有发布任何示例代码。 希望任何人都能给我一个如何做到这一点的通用例子。

感谢和greetz,Arno。

您始终可以获得元素的位置:

$('#bird').position().top // left, right, bottom. 

然后你可以得到这个精灵与对象的距离并设置正确的spState。

就像是:

  distance = Math.sqrt(( Math.pow( (object.position().left - spirte.position().left), 2) + Math.pow( (object.position().top - spirte.position().left), 2) )); 

所以你可以检查一下这些东西需要多长时间来改变。

检查一下 。

为了观看你需要这样的精灵 ,是一个jQuery插件,它使用Mutations Events来观察元素和文档 。

现在还有Mutation Observers是Mutations Events的替代品,所以你可以为你的DOM对象编写一个观察者, 更多这里

这是一个例子,我希望它可以帮助你提出一个想法。

更新

你需要做的就是获得父母的中心,然后检查你的精灵的当前位置,看看它是否比中心更多或更少。

左或右

更新2

它似乎在jsfiddle之外工作。 在这里测试一下。 (jsbin)