Доступ к атрибутам (attr) элемента Raphael при запуске события наведения мыши - PullRequest
2 голосов
/ 04 марта 2012

Я пытаюсь получить доступ и обновить определенные атрибуты элемента на холсте Рафаэля, когда запускаются события mouseover и mouseout ..

Поскольку документации мало, я некоторое время боролся с этим.

Следующий код завершается с ошибкой Object #<SVGCircleElement> has no method 'attr'

        $(circle.node).mouseover(function (e) {
            e.target.attr({ 'opacity': 0.2, 'fill': 'blue', 'stroke': 'white' });
        });

(Не) функционирующий код доступен здесь: http://jsfiddle.net/agarcian/mDnAb/3/

Любая помощь будет принята с благодарностью.

1 Ответ

4 голосов
/ 04 марта 2012

Вам необходимо использовать $(e.target).attr(...), поскольку e.target - это простой элемент DOM, который еще не упакован в jQuery.

С этим изменением все работает нормально: http://jsfiddle.net/ThiefMaster/mDnAb/4/

Кстати, вы можете использовать .hover() вместо двух отдельных событий: http://jsfiddle.net/ThiefMaster/mDnAb/5/

...