2015-02-07 3 views
0

Я хочу создать смайлики на моем сайте, так что где-либо является : D нашел, чтобы заменить его с изображениемЯ хочу, чтобы заменить текст на конкретное изображение

+0

Это потребует JavaScript или (предпочтительно) JQuery. Вы предпринимали какие-либо попытки решить это самостоятельно или искать в Интернете? –

ответ

0

Использование может взять отверстие содержимое и используйте php с str_replace (': D', '', $ content);

0

Вы можете направить javascript, который будет проходить через все подходящие элементы и регулярное выражение через внутреннийHTML элемента (или даже простой indexOf будет работать). затем замените html на новый элемент. может быть простым встроенным изображением.

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

<html> 
<head> 
    <script src="https://code.jquery.com/jquery-2.1.3.min.js"></script> 
    <style> 
     div.smile { 
      display:inline; 
      background: url(http://pix.iemoji.com/sbemojix2/0742.png) no-repeat; 
      background-size: 16px 16px; 
     } 
    </style> 
</head> 
<body> 
    <span>hello :D</span> 
    <div>hello :D</div> 
    <table> 
     <tr> 
      <td> 
       Hello 
      </td> 
      <td>:D</td> 
     </tr> 
    </table> 
    <input type="text" value ="hello :D"/> 

    <script> 
     $('div, span, td').each(function(i,e){ 
      if(e.innerHTML.indexOf(':D')>=0) 
       e.innerHTML = e.innerHTML.replace(':D','<div class="smile">&nbsp;&nbsp;&nbsp;</div>'); 
     }); 
    </script> 
</body> 

надеюсь, что это помогает

+0

Это очень помогло мне, но когда есть более 1 emoji, он заменяет только первый, btw меняет код, поэтому он выглядит так: Hamza

+0

Эй, Хамза, стандартная замена функциональности заменяет только первое вхождение. Вот статья, которая может помочь http://stackoverflow.com/questions/1967119/why-does-javascript-replace-only-first-instance-when-using-replace Надеюсь, это поможет –

+0

Я решил это, используя это $ body = $ row ['body']; $ body = str_replace (": D", "", $ body); – Hamza

Смежные вопросы