从父页面初始化iFrame中的TinyMCE

时间:2015-12-16 19:07:06

标签: javascript jquery iframe tinymce tinymce-4

我正在使用CMS,我们计划使用TinyMCE的内联编辑功能。我们将iFrame用于用户对其网站的查看(在编辑模式下)。父页面包含所有编辑逻辑/ GUI。我们希望在iframe页面本身之外的父项上保留Tiny的引用(以保持用户的网站清洁,没有引用),但是在框架内部的元素上初始化它。

所以这是理想的要求:

  1. 仅在父页面中引用Tiny,而不是用户的网站页面(iframe)本身
  2. 能够初始化特定元素(具有特定类别的元素)的小小内容iframe,FROM the parent
  3. 能够从页面上的元素中移除/取消初始化Tiny,以便清晰保存内容
  4. 我甚至不确定这是否可行(无法找到任何尝试过此操作的人),但这肯定是我们理想的解决方案。我无法找到任何方法来为Tiny提供一个将进入iframe的选择器。例如,此代码位于父页面上.....

    tinymce.init({
                    selector: ".editable-text", //the elements I want to enable this on
                    inline: true,
                    .....
                });
    

    .....应该是这样的(我意识到这将永远不会奏效):

    tinymce.init({
                    selector: "#My-iframe .editable-text", //So go into the iframe, then find ".editable-text"
                    inline: true,
                    .....
                });
    

    如果有任何帮助,我在父和框架上都有jQuery(但我没有Tiny的jQuery版本)。

    谢谢

1 个答案:

答案 0 :(得分:0)

我认为你不能。这将为您提供对可编辑textarea的jQuery引用:

$("#My-iframe").contents().find(".editable-text");

但我无法找到任何方法将其传递给TinyMCE的init方法,或者在此对象上调用init方法。 TinyMCE只希望 一个选择器,在这种情况下不够。