所以我有这个功能
$ ->
paper = Snap("#svg")
circ = paper.circle(100, 100, 50)
circ.click(-> circ.animate({r: 200}, 1000))
使用Snap.svg库。它在页面上选择一个svg元素并在那里绘制一个圆圈。单击圆时,半径会增加。
如果我想撤出circ.click()
内的功能,我无法让它正常工作。要么像这样
$ ->
foo = (circle) ->
circ.animate
paper = Snap("#svg")
circ = paper.circle(100, 100, 50)
circ.click(foo(circ))
或者像这样
foo = (circ) ->
circ.animate
$ ->
paper = Snap("#svg")
circ = paper.circle(100, 100, 50)
circ.click(foo(circ))
当页面加载后,foo()
会立即运行,但我想要它做的就是等到我点击圈子。
答案 0 :(得分:1)
试试这个。 circ.click(-> foo(circ))
答案 1 :(得分:-2)
每个JavaScript文件在加载后立即运行。在原始代码中:
$ ->
...
$是一个方法,它会立即执行,并将以下匿名函数作为参数传递。