Каждый редактор, работающий на странице в том или ином текстовом поле, называется ЭКЗЕМПЛЯРОМ (редактора). Экземпляр редактора имеет свои собственные переменные и методы, которые позволяют легко редактировать содержание текстового поля. Доступ к активному экземпляру редактора на странице может осуществляться при помощи переменной "editor.active".
Давайте представим, что мы присвоили переменной E значение editor.active в свойстве "СОДЕРЖАНИЕ" ("CONTENT") нашей js-кнопки (фактически нам больше не нужен editor.active, так как функции кнопки после этого переназначения вызываются с параметром E).
Вот ПЕРЕМЕННЫЕ экземпляра E:
E.textArea: текстовое поле экземпляра, представленное в качестве объекта HTML.
E.buttons: пронумерованный массив кнопок экземпляра, в виде объектов HTML, (объекты для ввода, тип кнопки или изображение)
E.bindex: индекс последней или текущей нажатой кнопки, который может быть использован в E.buttons. Например: E.buttons[E.bindex]
Вот МЕТОДЫ экземпляра E:
E.focus():
Переводит фокус на текстовом поле экземпляра.
E.getContent():
Возвращает содержимое текстового поля.
E.setContent(text):
Заменяет содержимое текстового поля переданным параметром text.
E.getSelection():
Возвращает выделенный в текстовом поле текст.
E.replaceSelection(text, cursor):
Заменяет выделенный в текстовом поле текст переданным параметром text. Необязательный второй аргумент определяет позицию курсора после замены.
Если cursor='start', курсор помещается в начале текста после замены.
Если cursor='end', курсор будет помещён в конце текста после замены.
Если cursor не определен, выделение сохраняется и выделяется текст после операции замены.
E.tagSelection(left, right, cursor):
Обрамляет выбранный текст в текстовом поле слева параметром left и справа параметром right. Необязательный Третий аргумент cursor определяет на позицию курсора после обрамления.
Если cursor='start', курсор помещается в начале выделенного текста.
Если cursor='end', курсор помещается в конце выделенного текста.
Если cursor не определен, выделение сохраняется.
E.makeSelection(start, end):
Выделяет текст между параметрами "start" и "end".
E.posSelection():
Возвращает позицию (координаты начала и конца) выделенного текста.
Возвращает {start: X, end: Y}, где X - координата начала и Y - координата конца.
Примечание: Отсутствие выделенного текста представляется как выбранный текст, где начало=конец=позиция_курсора (start=end=caret position).
E.buttonsDisabled(state, bindex):
Позволяет динамическая включать/отключать кнопки.
Первый аргумент означает состояние кнопки и должен быть установлен в "true" или "false". Необязательный второй аргумент содержит индекс кнопки, состояние которой не изменится.
Пример: отключаем все кнопки, кроме нажатой:
js: E.buttonsDisabled(true, E.bindex);
Источник:
Комментарии
Отправить комментарий