2015-01-05 60 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,