需要文本编辑器帮助

时间:2015-10-19 01:52:42

标签: javascript jquery

我遇到了这个编辑:http://jsfiddle.net/RRBHw/22/

我的问题是这些值(粗体,斜体,无序列表)来自何处?我所看到的只是

         <p>\
                <a href='#' class='bold'>Bold</a>\
                <a href='#' class='italic'>Italic</a>\
                <a href='#' class='unorderedlist'>List</a>\
            </p></div></div>");

                $('.bold', tb).click(function () {
                    formatText('bold');
                    return false;
                });
                $('.italic', tb).click(function () {
                    formatText('italic');
                    return false;
                });
                $('.unorderedlist', tb).click(function () {
                    formatText('insertunorderedlist');
                    return false;
                });

这似乎不对,但它确实有效。但是又如何为它添加更多选项(例如h1,下划线)?

1 个答案:

答案 0 :(得分:1)

您应该查看相同代码中的“formatText”函数:

 function formatText(command, option) {
    iframe.contentWindow.focus();
    try {
      iframe.contentWindow.document.execCommand(command, false, option);
    } catch (e) {
       console.log(e);
    }
    iframe.contentWindow.focus();
 }

特别是,这一行:

iframe.contentWindow.document.execCommand(command, false, option);

因此,如果您使用“bold”作为命令,则HTML将被修改并以粗体显示。

这里有一些文档:

https://developer.mozilla.org/en-US/docs/Web/API/document/execCommand

如果你想用同样的方式扩展命令,可能有一个命令列表:

https://developer.mozilla.org/en-US/docs/Web/API/document/execCommand#Commands