JavaScript获得突出显示的文本

时间:2014-02-25 18:33:14

标签: javascript html html5

我正在HTML5中创建一个基本文本区域,我允许用户通过按钮和下拉菜单格式化文本。现在我的按钮格式化文本框中的所有文本,但我真正想做的是通过允许用户突出显示文本然后使用按钮来格式化文本的选定部分。

到目前为止,我的一些职能是:

function Bold()
{
var target = document.getElementById("Text");
    if(target.style.fontWeight == "normal")
    {
    target.style.fontWeight = "bolder";
    }
    else
    {
    target.style.fontWeight = "normal";
    }
}
function Italic()
{
var target = document.getElementById("Text");
    if(target.style.fontStyle != "italic")
    {
    target.style.fontStyle = "italic";
    }
    else
    {
    target.style.fontStyle = "normal";
    }
}

我的文字区号:

<textarea id="Text" rows="4" cols="50">Type here</textarea>

如您所见,文本区域有一个名为“Text”的ID。我猜我想要创建另一个函数来返回突出显示的文本然后用该fuinction调用替换getElementById但是我不知道systax或方法这样做。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:1)

我建议使用库,除非您出于某种原因想从头开始编写它。可能是使用jquery而不是纯javascript并使用下面的插件。

https://github.com/jbr/jQuery.highlightRegex

答案 1 :(得分:0)

希望这会有所帮助 http://html5demos.com/contenteditable
您可以参考this主题获取更多信息