Я использую Raphaël Javascript lib (кстати, потрясающую штуку для рендеринга SVG) и сейчас пытаюсь обновить источник изображения при наведении на него мыши.
Дело в том, что яничего не могу найти по этому поводу (вероятно, это даже невозможно, учитывая, что я прочитал огромную часть источника Рафаэля, не найдя ничего связанного с этим).
Кто-нибудь знает способ сделать это?Возможно, это можно сделать без непосредственного использования API Raphaël, но поскольку сгенерированные элементы DOM не имеют идентификаторов, я не знаю, как вручную изменить их свойства.
На самом деле я делаю 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 "part: я написал это, зная, что это не сработает, но хорошо ...