【问题标题】:Joomla 2.5 jQuery with TinyMCEJoomla 2.5 jQuery 与 TinyMCE
【发布时间】:2013-02-01 15:11:14
【问题描述】:

我今天已经四处寻找了一段时间,但我似乎无法让它工作。

由于我想使用 jQuery 中的 .remove() 函数及其类似功能,我认为这将是一个“简单的过渡”。

目前在 Joomla 2.5.9 上,并尝试在文章编辑器中访问 TinyMCE。

有人能做到吗?

我需要将该编辑器的内容加载到临时 div 或 var 中,然后使用 $('#tmp').remove('...'); 之类的东西,最后将其放回活动编辑器。

问题是我不断得到 null 作为回报,无论我尝试什么:(

【问题讨论】:

    标签: javascript jquery joomla


    【解决方案1】:

    您需要通过TinyMCE Javascript API 来完成此操作。我为最近的一个项目执行了类似的任务,我可以推荐以下方法:

    tinyMCE.onAddEditor.add( function() {
        tinyMCE.activeEditor.onChange.add( function( ed ) {
             var content = ed.getContent();
    
             // process the content here
             // ...
    
             ed.setContent( content );
        });
    });
    

    getContent() 方法返回编辑器框架中的整个文本,包括 HTML 标记。之后您可以将其动态加载为 HTML 并对其进行操作:

    $( content ).remove( '...' );
    

    【讨论】:

    • 嗯,我不知道如何使用它。在我的 edit.php 文件中(是​​的,我必须编辑核心文件以在文章编辑器中添加自定义字段),我有一个字段,其中包含一个下拉列表,显示画廊中的专辑(我自己的组件)。当我选择一个时,它将插入<div id="container_gallery_{id}"><img src="...thumb.jpg" /></div>。正是这个 div 我需要用 jQuery 删除,好像有 2 个画廊紧挨着,普通的content.replace(regex) 将同时删除。
    • 没关系,我想我可以正常使用:var regex = new RegExp('<div id="container_gallery_'+a+'"(.*?)>[^~]*?<\/div>','gi');
    猜你喜欢
    • 1970-01-01
    • 2014-05-22
    • 2013-05-29
    • 1970-01-01
    • 1970-01-01
    • 2013-09-03
    • 1970-01-01
    • 2012-09-23
    • 2013-03-11
    相关资源
    最近更新 更多