Intereting Posts
Как вы можете помещать PHP в Javascript? PHP не может читать файлы, содержащие PHP-код, в виде текстовых файлов SQL: как выбрать одну запись в день, предполагая, что каждый день содержит более 1 значения MySQL Пользовательский сценарий маршрутизации лития SQL-запрос работает некорректно (числа) Миграция таблицы пользователей с хешированным паролем из старого приложения php в новое приложение laravel Почему php-итерация по ссылке возвращает дубликат последней записи? WordPress: загрузка нескольких скриптов с помощью enqueue PHP – удалить часть строки из другой строки PHP Проблема изменения ключевых значений рекурсивно в массиве JSON java jar из php exec или shell_exec не работает для батика PHPUnit: продолжить после смерти, ожидать «умереть» или как-то справиться с die ()? Получить случайный элемент из массива вызов двух js-функций и не печатать сообщение Идентификаторы PHP и MySql

Как заменить смайлики еще после того, как пользователь написал текст и нажмите пробел

Если пользователь пишет текст, например: :), 🙁 ect. На textarea, я хочу, чтобы он заменил этот текст смайликом сразу после нажатия пользователем клавиатуры. (Например, facebook заменит смайлик).

В моем ниже php-коде замените смайлик после нажатия submit. Но я хочу, он будет заменять также смайлик с помощью java-скрипта на стороне Clint.

мой php:

function smileys($text){ // Smiley to image $smileys = array( ':)' => '<img src="smilies/smile.gif" border="0" alt="" />', ':-)' => '<img src="smilies/smile.gif" border="0" alt="" />', ':D' => '<img src="smilies/smile.gif" border="0" alt="" />', ':-(' => '<img src="smilies/angry.gif" border="0" alt="" />', ':-D' => '<img src="smilies/biggrin.gif" border="0" alt="" />', 'lol' => '<img src="smilies/biggrin.gif" border="0" alt="" />', ':-|' => '<img src="smilies/undecided.gif" border="0" alt="" />', ';-)' => '<img src="smilies/wink.gif" border="0" alt="" />', ); // Now you need find and replace foreach($smileys as $search => $replace){ $text = preg_replace("#(?<=\s|^)" . preg_quote($search) . "#", $replace, $text); return $text; } } // My others code echo ''.smileys($description).''; 

Я собрал этот JavaScript, который начинает работать после нажатия клавиши пробела, но я не могу представить, как написать этот полный скрипт для текущей работы, которую нужно заменить.

  $('#comment').keypress(function(e) { if(e.keyCode == 32) { var comment = $('#comment').val() //What will be here, I can't understand !!! } }); 

моя текстовая реклама

 <textarea name="comment" id="comment"></textarea> 

Related of "Как заменить смайлики еще после того, как пользователь написал текст и нажмите пробел"

 var smileys = { ':)': '<img src="smilies/smile.gif" border="0" alt="" />', ':-)': '<img src="smilies/smile.gif" border="0" alt="" />', ':D': '<img src="smilies/smile.gif" border="0" alt="" />', ':-(': '<img src="smilies/angry.gif" border="0" alt="" />', ':-D': '<img src="smilies/biggrin.gif" border="0" alt="" />', 'lol': '<img src="smilies/biggrin.gif" border="0" alt="" />', ':-|': '<img src="smilies/undecided.gif" border="0" alt="" />', ';-)': '<img src="smilies/wink.gif" border="0" alt="" />', }; $(document).ready(function() { $(".chat > textarea").attr("disabled", false); //enable the box on page load $(".chat > textarea").keypress(function(e) { $(".chat > div").html(smilyMe($(".chat > textarea").val())); }); }) function smilyMe(msg) { //smiley replace return msg.replace(/(\:\)|\:-\)|\:D|\:-D|\blol\b|\:-\||\:-\(|\;-\))/g, function(all) { return smileys[all] || all; }); } 
 div.chat { width: 400px; height: 200px; border: 1px solid grey; } div.chat > div { height: calc(100% - 50px); width: 100%; border-bottom: 1px dashed #939393; padding: 2px 10px 10px 10px; } div.chat > div > div { color: #939393; font-size: 9px; } div.chat > textarea { height: 50px; width: 100%; box-sizing: border-box; border: 0px; padding: 5px; } div { box-sizing: border-box; } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <div class="chat"> <div> <div>Preview</div> </div> <textarea disabled placeholder="Type your message here..."></textarea> </div>