0

これが私の質問です。実際には、最初と 2 番目の 2 つの部分があります。たとえば、このコードを見てみましょう。私は地域で構成される地図を作成しています (私の国は地域で構成され、地図は私の国の地図です)。だから私はマップ全体で何かをしたい - スケーリング、翻訳など... (コメント行)。また、私はそれぞれ 1 つまたは 1 つの地域だけで作業したいと考えています。私は Raphaels が初めてで、javascript も使用していますが、その方法がわかりません。したがって、私がどのように行うかの疑似コードのようなものがあり、明らかに別の方法で行う必要があり、私の質問はどのようにするかです。それでは、以下のコードを見てみましょう。

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

1 に答える 1

0

おそらくあなたが望む2つの主な方法は..

set.forEach(function(e){
    //do something here on every element
})

set.transform('t100,100s2'); //translate and scale

http://raphaeljs.com/reference.htmlで Raphael のドキュメントを調べて、いくつかのビットを開始してから、jsfiddle (そこの左側に raphael lib を追加できます) を投稿して、発生している特定の問題を示します。

于 2013-10-31T11:04:41.003 に答える