【问题标题】:Integrating tinyMCE with Jspell for Spell Checks?将 tinyMCE 与 Jspell 集成以进行拼写检查?
【发布时间】:2012-12-24 17:35:21
【问题描述】:

我在我的旧项目中使用 jspell 进行拼写检查。我不确定它是哪个版本/模块。以前它用于简单 用户只能编写纯文本的文本区域。现在我正在使用 tinyMCE 编辑器(附有文本区域)。现在 拼写检查功能中断。我能够通过以下更改使其工作

function getSpellCheckArray() {
// some processing
fieldsToCheck[fieldsToCheck.length]='document.forms["form"].myTextArea';// lin 1
// some processing
}

我所做的调整是在第 1 行上方添加以下行

document.forms["form"].myTextArea.value=tinyMCE.activeEditor.getContent();

它工作正常。但问题是我看到一些 html 标签附加在显示拼写建议的窗口中(这些是 tinymce 在幕后附加的 html 标签)。

现在我的问题是有没有办法可以将 tinymce 与 jspell 集成?我可以看到一个专门为 tinyMCE 之类的编辑器设计的 JSpell Evolution 模块,但这是付费的 :(。另一种解决方案是 http://www.tinymce.com/wiki.php/Plugin:spellchecker,但在后端使用 jazzy 拼写检查器。我正在寻找如何将 tinymce 与 jspell 集成?

【问题讨论】:

    标签: java javascript tinymce spell-checking jspell


    【解决方案1】:

    看看这里:http://atiqurrahman.wordpress.com/2009/12/29/jspell-and-tinymce/

    根据 JSpell wiki,将 JSpell 与 TinyMCE 集成非常容易。

    function postTinyMCEInit() {
      setTimeout(jspellInit,500);
    };
    
    tinyMCE.init({
      oninit : "postTinyMCEInit"
    });
    

    但这是默认行为。我想要一些自定义,比如想要使用 TinyMCE 用于拼写检查的相同按钮。并且只想按需检查拼写。

    解决办法如下:

    <script SRC="/jspellEvolution/jspellSettings.js"  CHARSET="ISO-8859-1"></script>
    <script TYPE="text/javascript" SRC="/jspellEvolution/jspellEvolution.js" CHARSET="ISO-8859-1"></script>
    
    tinyMCE.init({
        setup : function(ed) {
            ed.addButton('customSpellingButton', {
               title : 'Spelling',
               'class' : 'mceAction mce_spellchecker',
               onclick : function() {
               jspellOnDemandCheck();
               jspellDialog();
               }
            });
        },
        theme_advanced_buttons1 : "customSpellingButton",
        oninit : "postTinyMCEInit"
    });
    
    function postTinyMCEInit() {
        jspellRealtime = false;
        jspellDialogShowNoErrors = false;
        jspellShowSpellingMenu = false;
        setTimeout(jspellInit, 500);
    };
    
    function getSpellCheckArray() {
        var fieldsToCheck = new Array();
        fieldsToCheck[fieldsToCheck.length]=[document,"frm.profile_ifr"];
        return fieldsToCheck;
    }
    
    <#assign action = "myForm"?url('UTF-8')>
    <form name="myForm" method="post" action="${lnk(action)} onsubmit="jspellDetach();">
    

    【讨论】:

      猜你喜欢
      • 2012-05-02
      • 2011-10-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-22
      • 2013-03-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多