@Antomas

Snap.svg совсем не очень?

var s = Snap("#svg");
var ball = s.circle(150, 150, 15);
ball.attr({
fill:"red",
stroke: "#000",
strokeWidth:1
});

var twoBall= s.circle(150, 150, 15);

twoBall.node.onmousemove = function(){
twoBall.animate({ transform:'translate(10,-30,5)'}, 50);
}
как при отведении мыши вернуть twoBall в изначальное положение, а при нажатии изменить цвет, посредством snap.svg
  • Вопрос задан
  • 1129 просмотров
Пригласить эксперта
Ответы на вопрос 2
Попробуйте так. Возможно не будет работать, т.к. не проверял. сделайте бекап.

var startState = {
 fill:"red",
 stroke: "#000",
 strokeWidth:1
 };

var s = Snap("#svg");
var ball = s.circle(150, 150, 15);
 ball.attr(startState);

var twoBall= s.circle(150, 150, 15);

 twoBall.node.onmouseover = function(){ 
 twoBall.animate({ transform:'translate(10,-30,5)'}, 50); 
 };
 twoBall.node.onmouseout = function(){ 
 twoBall.animate(startState, 50); 
 };
 twoBall.node.onclick = function(){ 
 twoBall.attr({ fill:"green"}); 
 }
Ответ написан
А зачем вы используете событие onmousemove? Если вам нужно при наведении что-то делать с элементом, а при сведении возвращать его в прежнее состояние, то вам нужны события mouseover и mouseout.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы