3

こんにちは、ドロップダウン メニューがあります。ドロップダウンのオプションを変更するたびに、キャンバスのコンテンツを変更したいと思います...たとえば

var paper = Raphael("myDivID",400,400);
function smallRectangle(){
  paper.rect(10,10,100,50);
}
function bigRectangle(){
  paper.rect(10,10,150,100);
}

ドロップダウンには、「小さな長方形」と「大きな長方形」の 2 つのオプションがあります。ドロップダウン選択時に対応する関数を呼び出したい。私が直面している問題は、ドロップダウン オプションを変更すると、Raphael がそれを描画しないように見えることです。私はスタックオーバーフローのいくつかの質問から、RaphaelJS で再描画手法を使用する必要がないことを読みまし

私がこのようにしようとしても:

var paper = Raphael("myDivID",400,400);
function smallRectangle(){
  paper.clear()
  paper.rect(10,10,100,50);
}
function bigRectangle(){
  paper.clear()
  paper.rect(10,10,150,100);
}

clear()これは、関数の後にキャンバスに要素を追加していないようです。キャンバスは空のままです。
参考までに: 私のコードは非常に大きいので、この簡単な例をここに投稿しました。

4

1 に答える 1

5

rect を再度描画する必要はありません....

function resize_Rect(rect,newWidth,newHeight){//passing rect ,new width and new height
         rect.attr({'width':newWidth,'height':newHeight});
               }

それがあなたを助けることを願っています...

于 2012-07-24T20:02:13.393 に答える