2012-03-29 121 views
0

比方說,我有一個黃色背景的HTML表格(50 x 50單元格)。我想使用jQuery在動畫循環中使用單元格的背景顏色來打印字母(A-Z)(例如一些單元格爲藍色,大多數單元格爲黃色)。我可以創建一個表格和一個指針,它可以遍歷表格的所有單元格,從而可以將特定單元格(x,y)的背景顏色更改爲不同的顏色。但是,我不明白要突出顯示哪些單元格以形成特定的字母。例如,要在50 x 50網格上顯示字母「A」,哪些單元格需要更改爲新的背景顏色,以便使單元格在屏幕上顯示字母A,以此類推其他信件。這是否有任何模式?如何將HTML表格單元格顯示爲彩色像素?

+0

我不能放棄你想要達到的目標。 – Yoshi 2012-03-29 09:54:01

+0

我是否正確地假設你正試圖實施一些模糊的驗證碼或什麼? – Kaii 2012-03-29 09:54:36

+0

不是。我只是想創建一個動畫,它會在循環中顯示一個人的名字。例如「Kai」會先顯示K,然後再顯示A,然後我 – 2012-03-29 09:57:36

回答

5

創建一個循環的細胞,例如:

for(var i=65;i<=90;i++) { 
    console.log(String.fromCharCode(i)); 
} 

(65是用於A炭代碼,90 Z)。 在循環中,將id與char相關聯。像「charA」,「charB」。 比你可以訪問字段搜索ID <「char」+ letter>。

String.fromCharCode(65+y*50+x); 

還是從elment本身

$(this).val(); 

利用它的價值:如果你只知道(X,Y)在50×50格,計算它是與信

或從屬性附加到它:

$(this).attr('letter') 
+0

我不想在單個單元格上打印字母。我希望這封信完全使用不同單元格的數量來佔用網格。 – 2012-03-29 10:08:46

+0

準確地說,我想在50 x 50網格上顯示字母表的形狀 – 2012-03-29 10:15:45

+0

對不起,誤解了這個問題。增加了一個新的答案 – bArmageddon 2012-03-29 10:21:10

1

使用畫布(編輯:僅用於生成字母座標在50x50網格,之後不再使用帆布)。

  • 每個字母可能,打印50×50 HTML5/JavaScript的畫布黑白使用類似的字符: http://typeface.neocracy.org/examples.html

  • 然後訪問每個像素的畫布,以檢查它的黑色或白色,並將其保存在多維JavaScript數組中。 getPixel from HTML Canvas?

  • 打印輸出並創建JavaScript代碼或JSON對象,以保存這些座標供您使用。

之後,您將擁有所有需要的信息:每個字母的座標和(所選字體的(獎金))。

+0

邏輯上它應該可以工作,但是,我不打算使用html5畫布。任何其他解決方法? – 2012-03-29 10:26:05

+1

畫布的用法僅適用於座標的生成,在代碼中之後不要使用它!編輯 – bArmageddon 2012-03-29 10:29:05

+0

,將其添加到答案中 – bArmageddon 2012-03-29 10:35:30