1

Jquery.clone();を使用できるかどうか誰かが知っていますか?Flotチャートで機能しますか?

var $clonedChart = $this.find('.chart-area').clone();
$('#details').append($clonedChart);

基本的には、チャートのクローンを作成し、ユーザーが「詳細ビュー」を表示するときにモーダルウィンドウで使用したいと思います。キャンバスは見えますが、残念ながらキャンバスの内容はレンダリングされません。それらを表示させる方法はありますか?プラグインも取得するために、凝ったディープクローンを作成してから、グラフを再レンダリングする必要があると思いますか?私はそれを避けたいと思っていましたが、それが可能かどうかはわかりません...

ありがとう!

4

2 に答える 2

1

clone()すべてのイベントハンドラーを複製するわけではないので、メソッドを呼び出すコードをパックして $.flot、別の場所に表示する必要があるときに再度呼び出すことをお勧めします。

于 2012-04-24T17:20:28.593 に答える
0

チャートがインタラクティブでない場合は、Flotプラグインを気にせずに、キャンバスのクローンを作成する必要があります。

function cloneCanvas(oldCanvas) {

    //create a new canvas
    var newCanvas = document.createElement('canvas');
    var context = newCanvas.getContext('2d');

    //apply the old canvas to the new one
    context.drawImage(oldCanvas, 0, 0);

    //return the new canvas
    return newCanvas;
}

別のSO質問からコピーされたコード

于 2012-04-24T17:29:30.440 に答える