javascript - 获取 ' ng2-ckeditor'中的光标位置

标签 javascript angular ckeditor

我是 Angular 2 的新手,并在 Angular 2 应用程序中使用“ng2-ckeditor 1.0.7”。编辑器在应用程序中运行良好。现在我想在光标位置附加文本。但无法使用 angular2 找到光标位置。我找到了使用 javascript 的代码,但我不知道如何使用 angular2/typescript。

我的 editor.component.ts 文件是 -

@Component({
    selector: 'editor',
    template:'
      <ckeditor [(ngModel)]="ckEditorContent" [config]="ckEditorConfig"></ckeditor>

})

export class EditorComponent implements OnChanges {
    @Input() panelData: string;
    constructor() {
        this.ckEditorContent = '';
}

ckEditorContent: string;
ckEditorConfig: {} = { "uiColor": "#CFD8D3", "removeButtons": "Save,Templates,Find,Replace,Scayt,SelectAll,Smiley,Flash,SetLanguage" };

ngOnChanges(): void {

    this.ckEditorContent += this.panelData;
    console.log("this.panelData = " + this.panelData);
    console.log("this.ckEditorContent = " + this.ckEditorContent);
}

}

`

最佳答案

在 html 文件中,您实现了 ckeditor 标签来实现。

<ckeditor [(ngModel)]="emailWidgetTemplate.content" id="email" [readonly]="false" 
     name="content" [config]="editorConfig" (contentDom)="onContentDom($event)"></ckeditor>

类似这样的事情。在此我实现了方法 contentDom 并在 ts 文件中实现了它。

onContentDom(e: any) {
        console.log('try e:', e);
        this.ckeditor = e.editor;
    }

将编辑器对象分配给某个局部变量 ckeditor。

单击按钮后,您可以在任何方法中使用此编辑器变量。

addText(someText){
  this.ckeditor.insertHtml(someText);
}

它将在当前光标位置添加文本。

关于javascript - 获取 ' ng2-ckeditor'中的光标位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44260107/

相关文章:

javascript - Aurelia 功能 globalResources (jspm)

javascript - Jcrop 裁剪图像无法正常工作,裁剪了错误的部分

javascript - 如何在 CKEditor 中将文本附加到 html 源?

java - 如何删除从ckeditor上传的图片?

javascript - 在 Rails 应用程序中将 CodeSnippet 插件添加到 CKEditor

javascript - Jquery/Javascript 根据输入字段更改表单操作

javascript - 使用 javascript 循环渲染文本 - 浏览器无响应

Angular 响应式(Reactive)表单验证器最初显示错误消息?

angular - 如何在 Angular 单元测试中修复 'Error: No value accessor for form control with name'?

javascript - 在 Angular 2 中不使用 ngFor 仅显示第一个 x li