添加<code> around selected text with nicEdit</code>

时间:2014-06-04 09:01:22

标签: javascript html tags selection nicedit

我正在寻找一种方法来添加&lt;代码&GT;使用nicEdit标记选定文本周围的标签。以及在再次选择文本时删除这些标记。

这样做的原因是我希望用户能够将textarea中的文本标记为代码,或者我可能想要的任何其他标记。

我需要能够标记几行,并且我需要将所选文本的html格式化保持为相同或不标记为代码。你开玩笑了。

我尝试过这个功能:

customButtonOptions = {
buttons : {
    'code' : {name : __('Mark text as code'), type : 'nicEditorCodeButton'}},
                iconFiles : {'code' : '../code.gif'}

                };

nicEditorCodeButton = nicEditorButton.extend({

mouseClick : function() {
var dataValue = 'code';
document.execCommand('formatBlock', false, '<'+dataValue+'>');
selectedElement = window.getSelection().focusNode.parentNode;
            selectedElement.className = "codePrint";
    }
});

nicEditors.registerPlugin(nicPlugin,customButtonOptions);

但对于代码或span标签(我也需要),它不起作用(仅一行)。它确实适用于预标签,但这对我没有帮助。

它也不是设置类的最佳选择,因为它取决于父节点,如果我可以添加它会更容易:

Normal text in the textarea
<code class="codePrint"> selected text </code> (ofc this part should be html and actually render)
Rest of the text in the text area

我也尝试过selectionStart,selectionEnd,但这些只返回undefined,我无法解决它。

有没有人可以帮助我?我变得非常绝望,我搜索整个网络(好吧,也许不是)找到答案,但我不能:s

聚苯乙烯。只需要适用于较新的浏览器

0 个答案:

没有答案