【发布时间】:2011-05-10 08:53:00
【问题描述】:
在 Raphael,js 中,如何选择元素?例如,如果我有一个矩形,如何选择它?在 Raphael 中,有没有办法像使用 jQuery 选择 DOM 元素一样选择元素?
【问题讨论】:
标签: javascript dom-events raphael
在 Raphael,js 中,如何选择元素?例如,如果我有一个矩形,如何选择它?在 Raphael 中,有没有办法像使用 jQuery 选择 DOM 元素一样选择元素?
【问题讨论】:
标签: javascript dom-events raphael
要选择一个 svg DOM 元素,假设 raphael 元素的一个节点有一个 ID,您可以通过 $('#ID') 以 'jQuery' 模式或以'native' 方式 document.getElementById('ID') 进行。
此外,使用 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
});
【讨论】: