Javascript 如何使用Raphael JS添加图像?
嗨,这里是我的Raphael js,在地图svg上创建一些矩形Javascript 如何使用Raphael JS添加图像?,javascript,svg,raphael,Javascript,Svg,Raphael,嗨,这里是我的Raphael js,在地图svg上创建一些矩形 var rsr = Raphael('map', '600', '600'); var houses = []; var houses_a = rsr.rect(433.6, 29.4, 100, 100); houses_a.attr({x: '433.6',y: '29.4',fill: '#FFFFFF',stroke: '#000000',"stroke-width": '5',"stroke-miterlimit":
var rsr = Raphael('map', '600', '600');
var houses = [];
var houses_a = rsr.rect(433.6, 29.4, 100, 100);
houses_a.attr({x: '433.6',y: '29.4',fill: '#FFFFFF',stroke: '#000000',"stroke-width": '5',"stroke-miterlimit": '10','stroke-opacity': '1'}).data({'id': 'houses_a', 'house': 'House A'});
houses.push(houses_a);
我可以通过改变矩形的颜色
houses_a.node.setAttribute('fill', "red");
但是当你试着去做的时候
houses_a.node.setAttribute('fill', "apple.png");
或
这行不通
还有其他方法吗?我不太清楚为什么要使用element.node.setAttribute而不是element.attr();有时是有原因的,但从上面看不太清楚 这取决于你实际上想做什么,如果你想做的事情有一点点的话,这会有所帮助 例如,您可以使用它来创建一个rect/image
var p = Raphael("paper", 800,800);
var img = p.image("http://svg.dabbles.info/tux.png", 10, 10, 300, 300)
.attr({ "clip-rect": "20,20,300,300" });
var p = Raphael("paper", 800,800);
var img = p.image("http://svg.dabbles.info/tux.png", 10, 10, 300, 300)
.attr({ "clip-rect": "20,20,300,300" });