试图在CKeditor 4中添加占位符,但是没有任何运气

时间:2018-09-05 15:19:30

标签: javascript ckeditor

我只是想为某些ckeditor配置某些设置,而且没有运气。例如,我确实有一个{em>可以工作的views/assets/javascripts/ckeditor/config.js ,但这是一个“全局”配置文件。

在我的Rails应用程序中的某些视图上,我想进行其他设置,例如占位符。与某些旧版本相比,我不确定版本4是否包含很多更改,但是这里有一些我使用过的其他stackoverflow参考:

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

此人特别建议使用CKEDITOR.replace("myeditor" , config );代替占位符,但这对我不起作用。当我用textarea元素的ID替换“ myeditor”(例如:CKEDITOR.replace("randomTextAreaID" , {placeholder: "Hello World"} );)时,出现以下错误:

  

未捕获编辑器实例“ randomTextAreaID”已经存在   附加到提供的元素上。

还有其他一些建议,这些建议从2012年开始显示为“ hacks”,但这是6年前的事情。无法想象为文本编辑器设置占位符会很困难。

**编辑**

所以我让它像这样工作:

var editor = CKEDITOR.instances['randomTextAreaID'];
if (editor) { editor.destroy(true); }
CKEDITOR.replace( 'randomTextAreaID', {
height: 20, 
});

但仍然看起来像试图设置一个占位符不起作用。

我还下载了占位符插件,并将其放在这里:views/assets/javascripts/ckeditor/plugins/placeholder,但还是没有运气。没有JavaScript加载错误,只是根本无法正常工作。

1 个答案:

答案 0 :(得分:0)

如果您希望使用占位符,请将此plugin添加到CKEditor构建中。由于占位符要求的插件也具有一些依赖性,因此我建议使用online builder。只需选择您的软件包(例如标准软件包),添加占位符插件,构建器就会处理依赖项。接下来下载缩小版本。

一旦可以使用,就需要在实例配置中添加占位符(config.js是全局配置,而replace方法中的配置是特定于实例的):

CKEDITOR.replace( 'randomTextAreaID', {
height: 20, 
extraPlugins : 'placeholder'
});

可以使用“占位符”对话框插入占位符。它们还会将[[any text]]之类的文本(例如您的初始内容)自动更改为占位符。要使用更多技术术语-该文本将被上载到占位符widget

另请参阅实际的占位符演示:https://sdk.ckeditor.com/samples/placeholder.html