如何在Mootools获得div的位置?

时间:2011-10-04 06:58:58

标签: javascript html mootools

我是Mootools World的新手,我正在学习它。我陷入了一个小小的维度。这是我的代码,我插入jsFiddle:

FIddle sample code

代码: HTML <div class="container"><div id="animate"></div></div>

mootools代码: var pos = $$('#animate').getPosition(); alert(pos.x);

我可以通过oject警告getPosition,但是我得到了:myElement.getPosition().x - 这个结果=未定义:(。

请更正我的代码,谢谢!

1 个答案:

答案 0 :(得分:3)

你的mootools代码错了。

$$说,this.document.getElements()(或Slick.search现在),它返回一个新的元素集合(带元素原型的元素数组)。

$$("#animate")说,返回id为animate的所有元素的集合(我希望你只有一个:-p)。结果是:[object] - 一个HTML集合。然后,对其应用getPosition(),这也将返回[{x: nnnn, y: nnn}]的数组。

无论如何,这就是它失败的原因。

如何修复

当你的意思是通过id返回单个元素时,mootools非常具体:使用document.id("animate")$("animate")的快捷方式。请注意,与jquery不同,#在此处被删除 - 它与本机js document.getElementById("animate")的作用相同,因为它更多(例如,扩展proto和assign uid)。

如果不确定,请始终在console.log中显示结果 - 它会向您显示数组。

NB 你无法获得不在dom中的元素的位置或大小。

http://jsfiddle.net/dimitar/ZHkAb/2/