1

根据 Google Material Design,我正在编写一个 Framer.js 函数来模拟当您点击按钮或图层时的“飞溅”效果。

它看起来像这样

tapSplash = (tapX,tapY) ->
   tapSplashLayer = new layer
       backgroundColor: "#ffffff"
       opacity: 0.2
       width: 500, height: 1500
       borderRadius: 1500
       midX: tapX
       midY: tapY

在此之后,我有一些代码来运行动画。

我的问题是,如何获得 tapX 和 tapY 坐标?使用已单击/点击的图层的中点还不够好 - 我希望动画源自用户点击的确切点

4

1 回答 1

2

看看你自己对这个问题的回答。从那以后,我对它进行了分叉并进行了更改,以便分别识别计算机上的点击或移动设备上的点击。 https://github.com/carignanboy1/Material-Design-Interactions/tree/improved-touch

touchEvent = Events.touchEvent(event)

if Utils.isPhone() || Utils.isTablet()
        tX = touchEvent.clientX - layer.x
        tY = touchEvent.clientY - layer.y
    else
        tX = touchEvent.offsetX
        tY = touchEvent.offsetY
于 2015-06-22T06:59:30.247 回答