【问题标题】:Changing Where CKEditor Looks for Images更改 CKEditor 查找图像的位置
【发布时间】:2013-07-14 01:47:30
【问题描述】:

我想知道是否有某种方法可以更改 CKEditor 查找图像的位置。现在它使用包含编辑器的网页的位置作为根目录,但我想编写一个 javascript 函数,可以将此目录更改为传递给函数的任意路径。

为此,我想扩展 CKEditor 的功能,以便能够将它创建的源代码保存到用户选择的任何位置。我已经实现了获取源代码并使用 wxWidgets 保存它,但是无法让 CKEditor 更改其工作目录,以便可以从用户选择的目录中包含图像。

我尝试使用一些属性,如 baseDir、basePath 和 baseHref 来实现这一点,但据我所知,它们都没有完全符合我的要求。

所以这个过程是: (1) 用户选择要保存源的目录 (2) 用户使用 CKEditor 创建一个页面,其中来自所选目录的图像可以包含并显示在 CKEditor (3) 用户将其页面的源代码保存到所选目录(此处保存的源代码应使用图像的相对路径,因为源现在与它包含的图像位于同一目录中)

我意识到这是对 CKEditor 的一种非常规的使用,但如果有人能够将我踢向正确的方向来实现这一点,我将不胜感激。

编辑: 因此,经过一些试验并将一些反斜杠更改为常规斜杠之后,看起来 baseHref 属性可以满足我的需求。尽管我愿意,但我仍然无法在运行时更改它的值。有人知道 CKEditor 是否可以做到这一点?我仍然想要一个 javascript 函数,我可以传递一个路径并让它改变这个 baseHref 值。现在我已经在 config.js 中设置了它的值。

如果这不可能,我知道您可以在编辑器中读写源代码。所以我想求助于从编辑器读取和存储源代码,使用新的 config.baseHref 重新加载 CKEditor,然后将源代码写回编辑器。有谁知道 CKEditor api 是否提供重新加载其配置的功能?

谢谢。

【问题讨论】:

    标签: ckeditor wysiwyg


    【解决方案1】:

    由于 CKEditor 通常托管在某处的服务器上,我预计不会有太多人尝试做我正在做的事情,但如果有人觉得它有帮助,这就是我最终做的事情。

    正如我在问题的编辑中提到的,修改 baseHref 为我提供了在图像文件名前面加上指向它的目录路径的功能。在编辑器运行时我无法找到修改它的方法,所以我最终告诉 CKEditor 每次从该行开始时加载一个外部配置文件

    config.customConfig = 'C:/Users/kenwood/Desktop/MarkCreator2/ckeditor/custom_config.js';

    然后我使用 C++ 将新内容写入 custom_config.js 任何时候我想切换目录。

    不幸的是,这种方法意味着我必须从编辑器中读取内容,刷新页面,然后在我想要更改目录的任何时候将编辑器内容写回。不过,这足以满足我的需要。

    【讨论】:

      猜你喜欢
      • 2011-02-15
      • 2016-11-23
      • 2011-01-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-06
      • 2013-05-01
      相关资源
      最近更新 更多