實訓項目“你畫我猜”總結_前端篇


為期4周的實訓就要結束了,感謝團隊中的每一名同學,才有了我們今天的成果。我們這個5人小團隊(產品一位,測試一位,開發三位(兩名后台,一名前端)),來自不同的學校,帶着剛畢業的學生氣一起組成了我們的“飛虎隊”。

從產品剛提出的手機版,被開發一致否決,決定做WEB版本開始,我們幾乎每天開會,討論需求,進度,接下來要做的事,優先級。

最后我們采用了mysql+redis+php+js(html5+flashcanvas.js) 這樣的技術組成,完成了web版的"你畫我猜"項目+管理后台,為期4周,進行了2期的產品開發。

作為組內的前端人員,也只能說說前端的工作了。

1、登錄頁:

登錄頁

 

用js實現:對郵箱和密碼的驗證、自動登錄功能。

細節上:焦點在輸入框中用紅色邊框,焦點丟失時驗證輸入的格式是否正確,如果正確則輸入框用綠色邊框;點擊登錄以后,用ajax請求向后台請求,在頂部顯示回調結果。

另:忘記密碼會給注冊的郵箱發送郵件哦~

2、注冊頁

注冊頁

同樣是郵箱、昵稱、密碼、確認密碼的js驗證;細節上包括了我已閱讀相關服務條款(感覺上挺專業的),點擊會出一個靜態頁面給出服務條款。

在昵稱的驗證上,使用了qwrap框架的byteLen,判斷長度(限制10個字以內的中文,20個字以內的英文)

3、大廳頁

大廳頁

功能:修改密碼(右上角),退出(返回登錄頁),加入(加入到相應的房間),創建房間,快速開始,前一頁,后一頁

細節上:

(1)修改密碼,大廳頁在測試中,產品嚴格要求到tab切換的順序

(2)大廳頁的那一排功能按鈕

加入按鈕前端的輸入框:默認顯示1-999;輸入非數字的時候,自動去除;如果加入房間已滿或者游戲已開始,給出提示,並且提示5秒以后消失

所有的button都做了hover效果。

4、畫畫頁(最復雜也是最核心的也在這里了)

畫畫頁畫畫頁

上圖左邊是畫畫的人看到的界面,右邊是猜的人看到的界面。

畫畫的人:有題目,有畫板(顏色,粗細,鉛筆,橡皮,垃圾桶)

猜的人:提示由誰畫畫。

畫板的實現:

高級瀏覽器用html5的canvas實現,低級瀏覽器用flashcanvas.js,每畫一筆傳一次數據到服務器(所以,如果鼠標一直按下不放開,就不會傳數據到服務器),

其中還包括,取消畫板部分被選中的(ie:unselectable=on   其他:-xxx-user-select:none;);畫板那里只響應鼠標左鍵畫畫;鼠標點擊的位置判斷

畫畫部分與消息部分都采用輪詢機制,每隔1秒向服務器請求一次數據。setTimeOut 實現輪詢。

 

一局結束畫畫以后:會給出這一局畫畫的答案提示(下左圖)。默認的三輪畫畫結束以后:會給出所有人的分數(下右圖):

一居結束  畫畫頁答案

 

細節上:發送部分支持鍵盤回車發送;點擊頂部右邊頭像,出小彈層提示分數畫畫頁

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

另外:前端還結合smarty模板,使得邏輯與現實分離;在js和css上加上時間戳,防止瀏覽器緩存;js框架采用qwrap;用minify對js和CSS進行了壓縮和合並

 

感謝奇舞團給予的技術支持,在每一次相關技術的詢問中,都有很多人給予解決方案。感謝后端工程師陳鵬和羅光,從沒有一點web經驗,到最后這個項目順利運行;感謝測試李玲,不斷的提各種問題;感謝產品申文,才真正的是不斷的提各種問題,各種細節;感謝產品張文靜,兼職了美工,每一個圖都是她的作品。

 

附:實訓項目馬上落下帷幕,這個東西也即將被OPS無情的清理掉,在一台虛擬服務器上(2G內存,單核2.4GCPU),QPS大概只有700左右。相信如果還有3期,4期,這個產品會越來越好,因為我們對它已經不止是一個責任,更多的是一種擁有感。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM