Javascript 在Raphaels中使用paper.setStart()和paper.setFinish()之间的元素
这是我的问题。实际上它有两个部分——第一部分和第二部分。让我们以这段代码为例。 我正在制作一张由地区组成的地图(我的国家由地区组成,地图是我国家的地图)。所以我想用整个地图做些事情,比如缩放,平移。。。(注释行)。 我还想用一个或一个区域的一部分来工作,也就是说用一个区域。 我对Raphaels和javascript都是新手,我只是不知道怎么做。所以这里有一些类似于伪代码的东西,我会怎么做,很明显我应该再做一次,我的问题是怎么做。让我们看看下面的代码:Javascript 在Raphaels中使用paper.setStart()和paper.setFinish()之间的元素,javascript,raphael,Javascript,Raphael,这是我的问题。实际上它有两个部分——第一部分和第二部分。让我们以这段代码为例。 我正在制作一张由地区组成的地图(我的国家由地区组成,地图是我国家的地图)。所以我想用整个地图做些事情,比如缩放,平移。。。(注释行)。 我还想用一个或一个区域的一部分来工作,也就是说用一个区域。 我对Raphaels和javascript都是新手,我只是不知道怎么做。所以这里有一些类似于伪代码的东西,我会怎么做,很明显我应该再做一次,我的问题是怎么做。让我们看看下面的代码: window.onload = func
window.onload = function() {
var p = Raphael("paper");
p.rect(0,0,600,350);
p.setStart();
var region1 = p.path("M404 ...");//I wont write all path here, "..." = rest of the path
var region2 = p.path("M173.5 ...");
//... rest of regions
var map = p.setFinish();
//map.scale(...).translate(...);// ... means just something correct is inthere
//I wanna do first for example something like this
map.region1.attr({
fill: "blue"
});
//how should I do it?
//Then second I would do also something like this
for (region in map) {
region.attr({//something...});
}
};
我认为你可能需要的两种主要方法是
set.forEach(function(e){
//do something here on every element
})
set.transform('t100,100s2'); //translate and scale
我会在get some bits Start上翻阅Raphael文档,然后发布一个JSFIDLE(您可以在左侧添加Raphael lib),其中包含您遇到的任何具体问题