2011-03-04 67 views
1

使用畫布我在頁面上創建三角形的集合,然後用大的漸變覆蓋它們。創建後修改畫布顏色

一旦創建了這些三角形,有一種方法可以引用它們以在某個事件上使用javascript更改它們的顏色?或者我必須再次繪製三角形?

for循環,使三角形:

context.fillStyle = color[i-1]; 
context.beginPath(); 
context.moveTo(1,leftStart+(itemStartHeight*(i-1))); //Tl 
context.lineTo(width,(itemHeight*(i-1))); //Tr 
context.lineTo(width,(itemHeight*i)+1); //Br 
context.lineTo(1,leftStart+(itemStartHeight*i)+(i!=items ? 1 : 0)); //Bl 
context.closePath(); 
context.fill(); 
+0

您可能要開始尋找SVG而不是Canvas,因爲它有一個_retained-mode_ drawing API。與HTML一樣,這些元素在創建之後就存在,並且對其屬性的更改立即生效。 – Phrogz 2011-03-04 05:14:27

回答

1

世界上沒有辦法在默認情況下引用canvas元素上繪製個性的東西,改變你必須重新繪製它們的顏色