【发布时间】:2011-02-21 16:22:58
【问题描述】:
我正在使用 Raphaël Javascript 库(顺便说一下,用于 SVG 渲染的好东西),目前我正在尝试在鼠标移过图像时更新图像的源代码。
问题是我找不到任何关于它的东西(这可能甚至不可能,考虑到我已经阅读了 Raphaël 的大部分资料却没有找到任何相关的东西)。
有人知道这样做的方法吗? 也许可以不直接使用 Raphaël 的 API 来完成,但是由于生成的 DOM 元素没有 ID,我不知道如何手动更改它们的属性。
我实际上是在做 CoffeeScript,但它真的很容易理解。 CoffeeScript 毕竟是 Javascript。 这就是我正在做的事情,我希望 MouseOver 和 MouseOut 方法来更改“bg”属性的来源。
class Avatar
constructor: (father, pic, posx, posy) ->
@bg = father.container.image "pics/avatar-bg.png", posx, posy, 112, 112
@avatar = father.container.image pic, posx + 10, posy + 10, 92, 92
mouseOver = => @MouseOver()
mouseOut = => @MouseOut()
@bg.mouseover mouseOver
@bg.mouseout mouseOut
MouseOver: ->
@bg.src = "pics/avatar-bg-hovered.png"
alert "Hover"
MouseOut: ->
@bg.src = "pics/avatar-bg.png"
alert "Unhovered"
class Slider
constructor: ->
@container = Raphael "raphael", 320, 200
@sliderTab = new Array()
AddAvatar: (pic) ->
@sliderTab.push new Avatar this, pic, 10, 10
window.onload = ->
avatar = new Slider()
avatar.AddAvatar "pics/daAvatar.png"
这实际上是有效的,除了“@bg.src”部分:我写它时知道它不会起作用,但是很好......
【问题讨论】:
-
完成:)!它是 CoffeeScript,但是...与 Javascript 几乎相同,只是对对象更友好。
标签: javascript image raphael