我正在尝试同时使用Zemanta的iframe/content和Redactor的HTML编辑器,但我无法让Zemanta找到Redactor的widgets,并在单击其中一个widgets后向其发送更新。
Redactor创建了一个iframe,但将真正的textarea隐藏在幕后,我想在两者之间发送更新,但我不知道如何同时更新这两个an。如果我使用iframe类,我会在redactor中看到它,但它不会在textarea中进行更改,当我保存时,我什么也得不到。
.redactor_frame (redactor IFRAME)
#zemanta_content (textarea) get_editor: function () {
var elm = null, win = null, editor = {element: null, property: null, type: null, win: null};
try {
elm = $('.redactor_frame').get(0);
if (elm && elm.contentWindow) {
win = elm.contentWindow;
elm = null;
} else {
elm = $('#zemanta_content').get(0);
}
editor = win && {element: win.document.body, property: 'innerHTML', type: 'RTE', win: win} ||
elm && {element: elm, property: 'value', type: elm.tagName.toLowerCase(), win: null} ||
editor;
} catch (er) {
$.zemanta.log(er);
}
return editor;
}发布于 2012-07-07 01:07:42
来自泽曼塔的安德拉兹。
我不确定这是否是一件容易解决的事情,但我们会让我们的前端开发人员来看看这一点。
既然Redactor编辑器的行为有点不规范,也许最好的办法就是求助于他们的支持。
发布于 2012-07-07 02:54:27
正如Andraz所指出的,在这种情况下,只覆盖/更改get_editor()是不够的。然而,我可以指出一个不同的解决方案。其他编辑器似乎会更新文本区,他们使用iframe进行升级的频率很高,如果不是经常更新的话,你会发现它们的状态是一样的。现在,如果你只使用一个,你可以在一些关键操作(保存,更新)上通过JavaScript将内容从当前活动的内容复制到后台。这种方法将为您节省大量时间,而且它的实现可能非常简单。
这对你有帮助吗?
https://stackoverflow.com/questions/11348914
复制相似问题