ComponentOne Wijmo Editor 是一款强大的HTML 编辑器,可以插入table, image, links 等标签,但是没有在光标处直接插入标签的功能。但是,现在Wijmo Editor 是一款基于 jQuery 控件。现在们可以通过客户端 object 模型去实现。
在本文中,我们将通过自定义方法来实现该功能。
首先,我们要插入wijmo:C1Editor 标签来展示 Wijmo Editor 。在使用 iFrame 加载Wijmo Editor 之后,我们就可以使用 createRange 和 execCommand 方法来实现在光标处插入文本了。
下面是实现该功能的完整代码:
- <script type="text/javascript">
-
- function insetTextAtCursor(inputText) {
- //get the container
- var $designView = $("iframe", $(".wijmo-wijeditor-container")),
- win, doc, range;
-
- if ($designView && $designView.length > 0) {
- //retrieve the Window object generated by the iframe
- win = $designView[0].contentWindow;
- }
-
- if (win) {
- //access the document object
- doc = win.document;
- }
-
- if (doc) {
- try {
- //check if the browser is IE
- if ($.browser.msie) {
- //insert the given text
- doc.body.focus();
- range = doc.selection.createRange();
- range.pasteHTML(inputText);
- range.collapse(false);
- range.select();
- } else {
- doc.execCommand('insertText', false, inputText);
- }
- } catch (e) {
- }
- }
- }
- </script>
复制代码
截图展示:
Demo下载:
|