CKEDITOR 内数据上的 jquery keyup

发布于 2024-12-13 21:28:45 字数 463 浏览 1 评论 0原文

我正在构建一个小假 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 并提取该数据?

谢谢。

I'm building a little fake html/css mobile phone which automatically inserts data from a several input boxes on a page like so: (the phone is inserted using an iframe..(don't ask)..)

$('#mgSiteDescription').bind('keyup', function() { 
   var iframedoc = $('.liveDemoFrame').get(0).contentDocument; 
   $(iframedoc).find('#header h2').html($(this).val()); 
});

This works absolutely fine for my input fields.

Now, I'm using CKEditor for my textareas which brings me to my problem. As the textarea isn't being updated live on the page, my keyup event isn't working and therefore, not updating my fake phone. How can I adjust CKEditor so that it updates the hidden textarea? Or maybe even access CKEditor's iframe and pull that data out?

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

漫漫岁月 2024-12-20 21:28:45

更新:

我已经成功地通过 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 的东西即可。

Update:

I've managed to get a keyup function working through CKEditor and it even removes the content from my fake mobile phone iFrame. I just don't know how to then insert the value/data of CKeditor into my iframe..if that makes sense?

    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());      

        });
    });

It's this bit I need to update I'm guessing?

html($(this).val())

Any ideas with what?

Edit:

So I got it working near enough to how I intended. Here's the final code for anyone in a similar position to me:

    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());         
        });
    });

Even if you're not using iFrames, that'll still work. Just hack out the jquery iframe stuff.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文