2015-01-05 59 views
0

我試圖爲我的服務器設置一個文本修飾符,如果輸入類似hello〜world〜的東西,它會斜體顯示'world'部分。我想用Javascript做到這一點,但我不知道如何去做這件事。在Javascript中修改文本

基本上這裏是腳本如何查找我在哪裏運行我的服務器。 這也是我現在基本上已經做過的,對於這個文本修改腳本。

beforeChatMessage: function(src, message, chan) { 
var user = sys.name(src); 
var usercolor = sys.color(src) 
if (message.toLowerCase().match("~")){ 
var italicmessage = message.replace(message, "<i>"); 
sys.sendHtmlAll("<font color="+usercolor+"><timestamp/> "+user+": "+italicmessage+"", channel); 
return; 
} 

這顯然是行不通的,所以, 我猜正確的方法是使用子? 任何幫助將是偉大的。

+0

你不能建立類似的CKEditor或TinyMCE的? – cari

+0

不,哈哈,我的服務器基本上是從遊戲中運行的,您可以在其中託管自己的服務器。每個服務器都可以用腳本進行設置。 – illuzion

+0

鍵入哪裏?聊天室類型的東西?您是否希望在按下回車鍵後讓文字顯示爲斜體並讓文字出現在聊天室中? – cbreezier

回答

1

你可以做這樣的事情與contenteditable="true"屬性:

<div id="demo" contenteditable="true">Hello world!</div> 

<script> 
    demo.innerHTML = demo.innerHTML.replace("world", "<span style='font-style: italic'>world</span>"); 
</script> 

Refer to this fiddle看到它的工作。

+0

這不適用於我運行我的服務器,基本上它關閉遊戲應用程序,並且它們有自己的Javascript變體。檢查我的OP,我用我基本上做過的和我的意思編輯它,這樣你就可以更清楚了。 – illuzion

0

我找到了一種方法來實際做到這一點,我測試了它,似乎工作。 只是使用正則表達式似乎工作。 示例;

大膽:/[b](.*?)[/b]/gi,