jQuery mobile pagebeforeshowでキャンバスをクリアする必要があります。
ユーザーが移動する最初のページは常に DOM にとどまるため、そのページにキャンバスが含まれていて、ユーザーが別のページに移動して戻る場合は、キャンバス要素を手動でリセットする必要があります。
この質問は、キャンバスをリセットする方法 -再描画のためにキャンバスをクリアする方法を示しています。
したがって、コードは次のようになります。
$(document).on("pagebeforeshow", "div.id_or_class_of_page(s)_with_canvas", function () {
ctx = _your_canvavs_element;
ctx.save();
// Use the identity matrix while clearing the canvas
ctx.setTransform(1, 0, 0, 1, 0, 0);
ctx.clearRect(0, 0, canvas.width, canvas.height);
// Restore the transform
ctx.restore();
});
キャンバスコードについてはわかりません。