Raphael.js,如何选择一个元素?

时间:2011-05-10 08:53:01

标签: javascript-events javascript raphael

在拉斐尔,js,我该如何选择元素?例如,如果我有一个矩形,如何选择它?在Raphael中,有没有办法选择元素,比如使用jQuery选择DOM元素?

1 个答案:

答案 0 :(得分:6)

要选择svg DOM元素,假设raphael元素的节点具有ID​​,您可以通过$('#ID')或“本机”document.getElementById('ID')以“jQuery”模式执行此操作。

此外,使用raphael处理事件非常简单,例如当您单击一个矩形时,您可以通过这种方式“选择”它(此处演示=> http://jsfiddle.net/steweb/zMYU8/):

<强>标记

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

<强> JS

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
});