繁体   English   中英

如何将占位符属性添加到 CKEditor 的实例?

[英]How do I add a placeholder attribute to an instance of CKEditor?

现在,使用阿方索的插件,我可以在 config.js 中添加占位符属性。 但是,由于我添加到 config.js 中,这意味着所有实例都将具有相同的占位符文本,对吗?

好吧,我不希望我的 ckeditor 的所有实例都具有相同的占位符文本,因为我还注意到他还说:

该值可以在配置中设置或作为被替换元素的属性

我认为这意味着我们可以将“键入内容...”作为 ckeditor1 的占位符文本,将“Blabla...”作为 ckeditor2 的占位符文本。 我怎么做? 还是他不是这个意思?

我尝试了几种方法,包括

    var ckeditor = CKEDITOR.replace('ckeditor1');
    ckeditor.placeholder = 'Type sometheing....';

    var config = [];
    config['placeholder'] = 'some value'; //or config = [{placeholder:'some value'}]
    CKEDITOR.replace("myeditor" , config );

在该特定页面内,但无济于事......我也清除了我的缓存。

通过一个属性,我的意思是:

<textarea name="editor" placeholder="Type here..."></textarea>

关于您的其他方法,配置是一个对象,所以这应该有效:

var config = {};
config.placeholder = 'some value'; 
CKEDITOR.replace("myeditor" , config );

CKEditor 对象有一个称为instances的属性,它存储所有实例。 要保存实例,只需将其添加到instances哈希中即可。

var someDomElement = X;
CKEDITOR.replace(someDomElement);
CKEDITOR.instances[someDomElementId];

var someOtherDomElement = Y;
CKEDITOR.replace(someOtherDomElement);
CKEDITOR.instances[someOtherDomElementId];

现在你有两个实例。 您现在可以使用标准 API 对该实例进行设置或执行任何操作。

CKEDITOR.instances[someDomElementId].CKEDITOR_API()

一些可能对其他人有帮助的快速方法。 我也很难让这个插件工作。 原因是我使用的是旧版本的插件。 我从这里下载了它: https : //ckeditor.com/cke4/addon/confighelper ,该页面也可能会让其他人感到困惑。

几乎所有来自 CKEditor 的插件都会在下载列表的顶部显示最新版本。 此外,当单击“下载”按钮时,它通常会下载插件的最新版本。 这个插件不是这种情况。 “下载”获取最旧的版本,最旧的版本也列在列表的最前面。

我认为值得一提的“陷阱”

placeholdertext插件似乎是一个不错的解决方案。 与 ConfigHelper 插件相反,占位符文本不会进入撤消/重做历史记录。

根据阿方索的网站,正确的方法是:

config['placeholder'] = 'some value';
CKEDITOR.replace("myeditor" , config );

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM