Raphael.js, как выбрать элемент? - PullRequest
4 голосов
/ 10 мая 2011

В Raphael, js, как я могу выбрать элемент?Например, если у меня есть прямоугольник, как его выбрать?В Рафаэле, есть ли способ выбрать элемент, как выбор элемента DOM, используя jQuery?

1 Ответ

6 голосов
/ 10 мая 2011

Чтобы выбрать элемент svg DOM, предполагая, что узел элемента Raphael имеет идентификатор, вы можете сделать это в режиме 'jQuery' с помощью $('#ID') или 'нативным' способом document.getElementById('ID').

Более того, использовать обработку событий в Raphael очень просто, например, когда вы щелкаете по прямоугольнику, вы можете «выбрать» его таким образом (демонстрация здесь => http://jsfiddle.net/steweb/zMYU8/):

Разметка

<div id="canvas"></div>

* JS 1014 *:

var selected = null; //var to store selected element

//initialize the raphael canvas and store it in a var
var canvas = Raphael(document.getElementById("canvas"), 320, 200);

//first rectangle
var r = canvas.rect(10, 10, 50, 50).attr("fill", "#FFFF22");

//second rectangle
var r1 = canvas.rect(70, 70, 50, 50).attr("fill", "#FFFF22");

//first rectangle click
r.click(function(){
  //change attributes
  r1.attr("stroke","black");  
  r.attr("stroke","green");
  selected = r; //update selected var
});

//second rectangle click
r1.click(function(){
  //change attributes
  r.attr("stroke","black");  
  r1.attr("stroke","green");
  selected = r1; //update selected var
});
...