2010-05-02 80 views
0

我很喜欢SVG,专门针对面向iPad用户的网页内容。我创建了一个小拨号类型的东西,我称之为“奶酪板”,我想用它作为界面元素。关于如何在Javascript中实现'touchMoveOver'事件的任何想法?

http://appliedworks.co.uk/files/times/SVGTests/raphael.html

点击一块奶酪(保持比喻会)会做“东西”。这一点很简单。但是,我希望用户能够在“奶酪板”周围拖动手指,每次他们的手指移过一块新奶酪时发射一个新事件(touchesMovedOver?)。但我不知道如何去做,因为触摸界面没有'mouseOver'的等价物。

如果整个事情作出平方,我可能已经创建了某种“rectContainsPoint”方法被调用为每一个“touchesMoved”,但这种做法不会在这里工作。

如果任何人有关于如何这样的事情是可以实现的任何想法,我很乐意听到它。

回答

0

我不知道他们是如何延伸到SVG,但有绝对处理触摸事件与JavaScript方法:http://rossboucher.com/2008/08/19/iphone-touch-events-in-javascript/

+0

这么多,我知道,但没有touchMovedOver事件来代替鼠标悬停事件。由于用户需要在屏幕上拖动手指,所以感觉这是一个应该存在的事件。 – gargantuan 2010-05-02 22:49:22

+0

我相信SVG具有获取SVG图形的元素在给定坐标下的功能。与耦合,通过iPhone的触摸事件API提供的手指的位置这种能力,你应该能够找出哪些元素是'mouseover''d和'mouseout''d和派遣自己这些事件。这听起来像是一个非常有趣的问题。给我发一个iPhone,我会尽力为你解决。提前致谢。 – icio 2010-05-03 00:06:00

0

我认为你是对的,SVG没有等效的mouseover事件。看看这个由闪存开发人员的思考片opines on the sad situation

的iPhone不支持鼠标移动, 如果你不能移动鼠标 鼠标按下之间和mouseup 事件,鼠标松开 之间的差别,并单击变得毫无意义。

MOUSEDOWN,理论上仍然有当用户触摸屏幕 ,不管以后发生什么 多数民众赞成发射了 有效的功能单独的事件 。不幸的是,理论, 这不是它的工作原理上 iPhone的方式。

当你触摸的元素,并留下您的 代替手指过一会儿,你 得到的散焦它(即 你被允许说出你不想 跟随后此链接的选项所有)。在 JavaScript事件而言,我预期 鼠标按下事件触发,但不是 点击(我不确定鼠标松开的)。 相反,没有事件发生。

相关问题