2010-11-23 105 views
1

我正在AJAX/JavaScript/PHP聊天室工作,我需要一些建議。基本上,當值發送(消息(txt_message),名字和聊天ID(聊天)),像這樣:JavaScript聊天室的用戶名顏色

var param = 'message=' + document.getElementById('txt_message').value; 
param += '&name=<b><?php echo $_SESSION['username']; ?></b>'; 
param += '&chat=2'; 
sendReq.send(param); 
document.getElementById('txt_message').value = ''; 

我想讓它這樣一個用戶名的每個實例($_SESSION['username'])是一種不同的顏色自動在聊天期間它保持特定的顏色。 正如您將看到的,到目前爲止,我剛剛以粗體顯示了用戶名;我不知道如果我試圖把代碼放在錯誤的地方,或者它應該在別的地方。這些值被放到一個div中,我可以在那裏編輯樣式,但它改變了所有不僅僅是用戶名。 如果我的解釋有點令人困惑,請提前致謝我的任何建議和歉意:)

回答

3

您可以在用戶名上使用散列函數爲用戶名分配顏色。即使用16種顏色並採用md5sum的第一個字符,因此您將分配(大部分)不同的顏色,並且一個用戶名將始終具有相同的顏色。

+2

請注意,這並不是最佳選擇,因爲您可能會以接近白色的顏色與背景區分開來。 – 2010-11-23 10:20:18

1

你可以做一些客戶端

通過通過聊天室與會者循環和應用CSS樣式/類的具有使用,你通過循環運行的遞增十六進制顏色集合