BecameEmpty: function(sender, args);
sender. Источник события;
args. Информация о событии.
Событие BecameEmpty наступает после того, как терм становится пустым.
Для выполнения примера необходимо наличие на html-странице ссылок на файлы сценариев PP.js, PP.Ufe.js и файлы стилей PP.css, PP.Ufe.css, в теге <body> html-страницы элемента <div> с идентификатором «termEdit». Создадим на html-странице редактор термов и добавим несколько термов:
function createTerm() { // Создаем редактор термов termEdit = new PP.Ui.TermEdit({ // Устанавливаем родительский элемент ParentNode: document.getElementById("termEdit") }); // Добавляем строковое значение в редактор termEdit.insertString("100"); // Добавляем данные в редактор termEdit.insertData([new PP.Ui.Term({ Content: "+", Formula: "+" })]); // Добавляем терм в редактор termEdit.insertString("20"); }
В результате в редактор термов будет добавлено несколько термов:
Установим курсор на терм с содержимым «20». Получим выбранный терм и добавим ему обработчик события BecameEmpty, также получим начальную и конечную позиции терма в выражении и проверим, является ли он односимвольным термом:
// Получаем выделенный терм term = termEdit.getSelectedTerm(); // Добавляем выделенному терму обработку события становления пустым term.BecameEmpty.add(function (sender, args) { console.log("Выбранный терм стал пустым"); }, term); // Получаем номер позиции начала терма console.log("Начальная позиции терма: " + term.getStartOffset()); // Получаем номер позиции конца терма console.log("Конечная позиции терма: " + term.getEndOffset()); // Проверяем, является ли выделенный терм односимвольным термом if (term.getIsOneCharTerm()) { console.log("Выделенный терм является односимвольным термом"); } else { console.log("Выделенный терм не является односимвольным термом"); }
В результате в консоль будут выведены начальная и конечная позиции выделенного терма:
Начальная позиции терма: 4
Конечная позиции терма: 6
Выделенный терм не является односимвольным термом
Проверим, можно ли редактировать формулу выбранного терма:
// Проверяем, можно ли редактировать формула выбранного терма if (term.canEditFormula()) { console.log("Редактирование формулы терма разрешено"); } else { console.log("Редактирование формулы терма запрещено"); }
В результате в консоль будет выведен результат проверки:
Редактирование формулы терма запрещено
Удалим первый и последний символы терма:
// Удаляем последний символ терма term.deleteLastChar(); // Удаляем первый символ терма term.deleteFirstChar(); // Обновляем термы редактора termEdit.updateTerms();
В результате в редакторе термов будет отсутствовать терм с содержимым «20»:
В консоль будет выведено сообщение о том, что выделенный терм стал пустым:
Выбранный терм стал пустым
См. также: