NicEdit не может загрузиться

#nicedit

#nicedit

Вопрос:

Когда я инициализирую NicEdit с помощью этого скрипта :

сценарий 1

 <script type="text/javascript">
bkLib.onDomLoaded(function() { nicEditors.allTextAreas() });
 

Моя текстовая область по — прежнему используется по умолчанию , а затем я добавляю этот скрипт:

сценарий 2

 $(document).ready(function() {
    nicEditors.allTextAreas();
 

Это работа, но какова функция первого скрипта?
потому что, хотя я только что использовал второй скрипт, его работа

это моя проблема: D После успешной инициализации NicEdit я снова создаю новую текстовую область в новом div (я снова пишу сценарии 1 и 2), а затем firebug говорит » A.removeInstance — это не функция»

помогите мне освоить

Я всего лишь новичок

Ответ №1:

В niceEdit.js замените функцию checkReplace на следующую:

     checkReplace : function(e) {
    var r;
    var editors = nicEditors.editors;
    for(var i=0;i<editors.length;i  ) {
        if(editors[i].instanceById(e)) {
            r = editors[i]; // r is an instance of nicEditorInstance therefore it does not have removeInstance or removePanel methods
            break;
        }
    }

    if(r) { 
        r.removeInstance(e);
        r.removePanel();    
    }
    return e;
}
 

Комментарии:

1. Приведенный выше код никогда не будет запускать часть if (r) и поэтому является избыточным. Этот код предотвращает ошибку в ie / firebug, но останавливает отображение полной панели редактора.

Ответ №2:

Попробуйте более новую версию с https://github.com/danishkhan/NicEdit/downloads — это от сентября 2010 года. Версия с его веб-сайта создана в апреле.

На его веб-сайте github вы можете увидеть комментарий вверху: «исправлена ошибка removeInstance: r является экземпляром nicEditorInstance (или nicE»

Может быть, это вам поможет — я потерял целое утро, исправляя уже исправленную ошибку, потому что я этого не знал =)