Функция выравнивания текста в NicEdit не работает в FireFox - PullRequest
0 голосов
/ 29 марта 2010

Я обнаружил проблему с NicEdit (Rich Text Editor) при наборе текста и нажмите кнопку выравнивания, чтобы выровнять текст. Текст не настроить только на FireFox и получил это сообщение на FireBug

необученное исключение: [Исключение ... «Компонент вернул код ошибки: 0x80004005 (NS_ERROR_FAILURE) [NsIDOMNSHTMLDocument.execCommand]» nsresult: "0x80004005 (NS_ERROR_FAILURE) "местоположение:" JS Рамка :: http://js.nicedit.com/nicEdit-latest.js :: аноним :: строка 38 "данные: нет] Линия 0

Пожалуйста, не могли бы вы помочь мне решить эту проблему.

Спасибо

Ответы [ 3 ]

3 голосов
/ 13 августа 2010

Если вы используете сжатый код, перейдите к строке 37 и найдите этот код:

Поиск B.contentEditable

Вы найдете условие if в точности так:

if (B.contentEditable || !! window.opera)


Замените его следующим:

if ((B.contentEditable || !! window.opera) && navigator.userAgent.indexOf ("Firefox / 3") == -1)

2 голосов
/ 07 февраля 2011

Ответ выше приведёт вас в режиме iFrame, который довольно медленный. Вы лучше посмотрите здесь: http://web2.0goodies.com/blog/javascript/nicedit-firefox-center-and-right-align-bug-patch/. Это действительно исправит ошибку FF.

0 голосов
/ 10 января 2012

Просто добавьте это: document.execCommand('StyleWithCSS', false, false); ... прямо перед вашей execCommand(cmd, false, val) командой. Вокруг линии 576.

       nicCommand : function(cmd,args) {
          if(navigator.appVersion.indexOf("MSIE") <= 0) {
              //do not use for IE
              document.execCommand('StyleWithCSS', false, false);
          }
            document.execCommand(cmd,false,args);
        }       
...