2015-02-07 65 views
0

我想創建在我的網站上,以便在以往任何時候表情符號:d發現用圖像來代替它我想一個文本替換到一個特定的圖像

+0

這需要JavaScript,或者(最好)的jQuery。你有沒有試圖自己解決這個問題或在線搜索? – 2015-02-07 15:00:46

回答

0

使用可以採取孔的內容和用str_replace(':D','',$ content)使用php;

0

你可以通過元素的innerHTML(或者甚至簡單的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

它幫助了我很多,但是當有更多的表情符號替換第一個表情符號時,順便說一句,我改變了代碼,所以它看起來像這樣: Hamza 2015-02-07 16:44:42

+0

嘿哈姆扎,標準的替換功能只替換第一次出現。這裏是一篇文章,可能會幫助http://stackoverflow.com/questions/1967119/why-does-javascript-replace-only-first-instance-when-using-replace希望這會有所幫助 – 2015-02-09 16:42:37

+0

我用它解決了這個問題 $ body = $ row ['body']; $ body = str_replace(「:D」,「」,$ body); – Hamza 2015-03-01 19:22:35

相關問題