2012-05-17 60 views
0

我的問題是,當我點擊按鈕時,調用callfunction()方法和計數器增加5,當我再次點擊計數器增加5並在給定位置顯示10我my問題是當計數器遞增時,先前的號碼不會被刪除,並且顯示前一個號碼的遞增號碼。我想刪除先前的號碼並顯示下一個遞增的號碼。我有以下代碼如何從javascript中刪除文本

var count=0; 
function callfunction() 
    { 
     context.fillText(count,200,200); 
     count = count+5; 
     //context.fillText("",200,200); 
    } 

回答

0

fillText與背景顏色,如果它是單色的。或者保留之前作爲圖像數據的內容,然後在想要刪除文本時粘貼它。

+0

非常感謝你我得到了我的答案... – pravin

-1

先清除畫布:

var count=0; 
    function callfunction() 
    { 
     context.clearRect (0 , 0 ,canvas.height , canvas.width); 
     context.fillText(count,200,200); 
     count = count+5; 
     //context.fillText("",200,200); 
    } 
+0

畫布在代碼中未定義。 – Nate

0

我知道的唯一方法是清除使用canvas.fillRect全canvas元素。

例如,請參閱此jsFiddle

0
count = 0; 
function update(){ 
    canvas.clearRect(0,0,canvas.width,canvas.height); 
    canvas.fillText(count,200,200); 
    //Draw anything else... 

} 

setInterval("update()",1000/60); //60 Frames per second 

button.onclick = function(){ //Change button to your button element 
    count += 5; 
} 

這應該工作!

0

您可以使用clearRect()只清除畫布的一部分...

如果你知道你的文本字段的大小,設置clearRect()到大到足以清除文本字段一個矩形:

var count=0; 
function callfunction() 
    { 
    context.clearRect(200, 190, 50, 10); // clears a text field 50 x 10, above baseline 
    context.fillText(count,200,200); 
    count = count+5; 
    }