2009-07-12 4 views
12

私は、グラフィカルなJavaScriptのメインコンテナをクリアして再描画する必要があります。私は試しましたraphaeljsを使用してコンテナをクリアする最も簡単な方法javascriptのグラフィカルライブラリ

 
var paper = Raphael(10, 50, 320, 200); 
paper.remove(); // Doesn't work 
paper.node.removeNode(); //this neither 
paper.removeNode(); //this neither 

ご存じですか?

+0

ラファエルは何のために働くかどうか分かりませんか? – BerggreenDK

+0

http://raphaeljs.com/、グラフィカルなjavascriptライブラリ – Emilio

答えて

9

は、それだけで非常に簡単paper.clearがあることを、私の通知に来て;:あなたがキャンバスを削除したい場合にのみ、次のコマンドを実行する必要がありますこれは文書化されていません。

+0

はい、それは文書化されました http://dmitrybaranovskiy.github.io/raphael/reference.html#Paper.clear – RikiRiocma

0

はい!あなたはそれがDOMオブジェクトを作成し、紙を作成した場合 あなたは...ドキュメントの最後に耕すために

(
function (local_raphael) 
{ 
/*Put your little bit of Rap code in here*/ 
var paper = local_raphael(10, 10, 320, 200); 
} 
)(Raphael.ninja()); 

http://www.irunmywebsite.com/raphael/raphaelsource.html

+0

Raphael.ninja()(http://raphaeljs.com/reference.html#Raphael.ninja)はライブラリ全体を削除するので、私はそうは思わないラファエルで何か他のことをすることが可能です。私はpaper.clear()が紙の要素を取り除くのに十分であると思う、あるいはpaper.remove()を使ってDOMから実際に紙を取り除くと思う。 – beldaz

15

を持っています。

paper.canvas 

新しいRaphaelオブジェクトを作成するときは、新しいDOMオブジェクトを作成して元のオブジェクトをそのまま残してください。これはすべてを考慮してそれを行うための最良の方法です。 )(実際に

//Note: after calling this function the paper object will be useless! 
//Make paper object null (or a new paper object) immediately! 
function clearPaper(paper){ 
    var paperDom = paper.canvas; 
    paperDom.parentNode.removeChild(paperDom); 
} 
+1

http://raphaeljs.com/reference.html#Paper.removeはどうですか? – beldaz

3

最新のgRaphael 0.5.1では、clear()メソッドを呼び出すだけで簡単にグラフをクリアできます。 すなわち

var r = Raphael(...) 
r.clear(); 

しかし、私はそれはあなたのバージョン

関連する問題