我有一个这样的脚本,它在RaphaelJS中为纸质对象添加一个基本矩形,然后在矩形上设置一些自定义属性:
var furniture = paper
.rect(0, 0, 100, 200)
.attr({
fill: '#ccc'
})
;
furniture.node.id = 'some-id';
$(furniture.node).attr('class','draggableFurniture');
$(furniture.node).attr('productId','1234');
$(furniture.node).attr('title','Some title');
$(furniture.node).attr('price','123.99');
这在IE9和Firefox / Chrome等中效果很好,但在IE8或7中不起作用,大概是因为这些浏览器使用的是VML而不是SVG,可能是因为VML没有可以像以前一样使用的DOM结构SVG。
我想知道如何在所有浏览器中一致地将自定义属性放入这些对象中(至少包括IE8和7)?
谢谢大家!
答案 0 :(得分:0)
排序! Raphael API中有一个名为“data”的方法(http://raphaeljs.com/reference.html#Element.data),它允许为纸张上的每个项目设置自定义键/值对。虽然它不接受一个项目数组,但可以多次调用此方法,因此可以通过这种方式添加每个属性。这里可以看到一个例子:http://www.irunmywebsite.com/raphael/additionalhelp.php?v=2&q=element.data#pagetop
答案 1 :(得分:0)