我正在构建一个假的 html/css 手机,它会自动从页面上的几个输入框插入数据,如下所示:(手机是使用 iframe 插入的..(不要问)..)
$('#mgSiteDescription').bind('keyup', function() {
var iframedoc = $('.liveDemoFrame').get(0).contentDocument;
$(iframedoc).find('#header h2').html($(this).val());
});
这对于我的输入字段来说绝对有效。
现在,我正在使用 CKEditor 作为我的文本区域,这让我遇到了问题。由于页面上的文本区域没有实时更新,我的 keyup 事件不起作用,因此不会更新我的假手机。如何调整 CKEditor 以更新隐藏的文本区域?或者甚至可以访问 CKEditor 的 iframe 并提取该数据?
谢谢。
最佳答案
更新:
我已经成功地通过 CKEditor 实现了 keyup 功能,它甚至删除了我的假手机 iFrame 中的内容。我只是不知道如何将 CKeditor 的值/数据插入到我的 iframe 中..这是否有意义?
CKEDITOR.instances.mgAddHomePage.on('contentDom', function() {
CKEDITOR.instances.mgAddHomePage.document.on('keyup', function(event) {
var iframedoc = $('.liveDemoFrame').get(0).contentDocument;
$(iframedoc).find('#content').html($(this).val());
});
});
我猜我需要更新这一点?
html($(this).val())
有什么想法吗?
编辑:
所以我让它的工作足够接近我的预期。这是与我处境相似的任何人的最终代码:
CKEDITOR.instances.mgAddHomePage.on('contentDom', function() {
CKEDITOR.instances.mgAddHomePage.document.on('keyup', function(event) {
var iframedoc = $('.liveDemoFrame').get(0).contentDocument;
$(iframedoc).find('#content').html(CKEDITOR.instances.mgAddHomePage.getData());
});
});
即使您不使用 iFrame,它仍然可以工作。只需破解 jquery iframe 的东西即可。
关于CKEDITOR 内数据上的 jquery keyup,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8031793/