This is a really simple chat room that I've made using Firebase. Before I take it to the next level I want to know if there is anything I can improve right now. Since I'm new to Firebase I don't know a whole lot about it so any pointers are greatly appreciated.
var myDataRef = new Firebase('https://insertnamehere.firebaseio.com/');
//Set a max limit of entries to 100
dataAddQuery = myDataRef.limit(100);
dataAddQuery.on('child_added', function(snapshot) {
var message = snapshot.val();
displayChatMessage(message.name, message.text);
});
//Adds a scrollbar when 26 messages have been written so that it stays within the container
dataRemoveQuery = myDataRef.endAt().limit(26);
dataRemoveQuery.on('child_removed', function(snapshot) {
var message = snapshot.val();
removeChatMessage(message.name, message.text);
});
document.getElementById("messageInput").addEventListener("keypress",(function (e) {
//When ENTER is pressed
if (e.keyCode == 13) {
var name = document.getElementById('nameInput').value;
if (name.length > 18) {
alert('Please enter a shorter name'); //The alert is temporary
}
else {
var text = document.getElementById('messageInput').value;
if (text.length > 450) {
alert('Your message is too long'); //The alert is temporary
}
else {
myDataRef.push({name: name, text: text});
document.getElementById('messageInput').value = "";
}
}
}
}))
function displayChatMessage(name, text) {
var newMessage = document.createElement("div");
newMessage.innerHTML = "<b>" + name + "</b> : " + text;
document.getElementById("messagesDiv").appendChild(newMessage);
}
function removeChatMessage(name, text) {
document.getElementById("messagesDiv").removeChild(document.getElementById("messagesDiv").firstChild)
}
HTML:
<body>
<div id='container'>
<div id='header'>Have a chat</div>
<div id='messagesDiv'></div>
<div id='inputs-holder'>
<label for='nameInput'>Name:</label>
<input type='text' id='nameInput'>
<!--<span>Press enter to send your message</span> Excluded for this review -->
<!--<button id='questionmark'>?</button> Excluded for this review -->
<textarea type='text' id='messageInput' placeholder='Write your message here...'></textarea>
</div>
</div>
<!--<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js'></script>-->
<script src="chatroom.js"></script>
</body>