Comment Facebook change les Emoji de leurs symboles en discutant?
Image Première - Texte initial lorsque vous tapez quelque chose dans Facebook Chat Box Image Second - Le moment vous appuyez sur l'espace, il se transforme en cela!
J'ai vu dans la console de développeur ce n'est pas du tout la boîte d'entrée, ils utilisent span et tous avec background-image pour le faire mais comment le combiner complètement, pour éviter tout encombrement. Je joins un lien de codepen de ce que j'ai fait en appuyant sur la touche Entrée. Mais pas en mesure de le faire pour le Space Bar. Codepen Link Tout ce que vous pouvez aider. Merci d'avance. NOTE: - Pas de bibliothèques externes et préfèrerait une réponse Javascript.
var emojiContainer = {
":)" : "https://static.xx.fbcdn.net/images/emoji.php/v9/zeb/2/16/1f642.png",
"<3" : "https://static.xx.fbcdn.net/images/emoji.php/v9/zed/2/16/2764.png"
};
var chatDetailText = document.getElementById('chatDetailText');
chatDetailText.addEventListener("keypress", function (e) {
console.log("Inside keypress event")
var textEntered = chatDetailText.value;
var keyPressed = e.which || e.keyCode;
console.log(emojiContainer[this.value])
if (keyPressed === 13){
console.log("inside keypress 13")
if(emojiContainer[this.value]){
console.log("inside value found of enter")
var emojiImg = document.createElement("img");
emojiImg.src = emojiContainer[this.value];
document.getElementById('enterPressed').appendChild(emojiImg);
document.getElementById('chatDetailText').value = '';
}else{
console.log("value not found of enter")
var divChatDetail = document.createElement('div');
/*chatDetailSeperator.className = "aClassName";*/ //To add class name for div
divChatDetail.innerHTML = this.value;
document.getElementById('enterPressed').appendChild(divChatDetail);
document.getElementById('chatDetailText').value = '';
}
}
}, false);
Merci Zeeshan pour le code ci-dessus. J'ai mis à jour le stylo avec ceci, mais maintenant il prend le pointeur au début de la ligne plus cela ne fonctionne qu'une seule fois comme si je tape plusieurs :) ça ne marche pas, ça a quelque chose à voir avec l'événement keypress. Et cela ne laissera même pas l'utilisateur soumettre le message en appuyant sur la touche Entrée ou je vais devoir garder différentes fonctions pour les deux que je pensais pouvoir éviter. Merci pour l'aide! –