focus();
Метод focus обрабатывает событие передачи фокуса модулю и его элементам.
Реализация данного метода зависит от классов, унаследованных от ModuleObject. В настоящее время данный метод реализует только PP.Application.EaxModuleObject.
Для выполнения примера необходимо, чтобы был открыт любой экспресс-отчёт, а указанный ниже сценарий был запущен в консоли браузера.
Вызовем обработчики событий blur, focus и focusout и проверим, как они влияют на признак изменения экспресс-отчёта:
// Получим объект текущего модуля var moduleObject = PP.App.getModuleObject(); // Определим функцию для проверки, был ли изменён экспресс-отчёт var defineIsChanged = function (event) { if (moduleObject.setIsChanged()) { console.log("Экспресс-отчет после обработки события " + event + " был изменён"); // Сбросим признак того, что экспресс-отчёт был изменён moduleObject.setIsChanged(null); } else { console.log("Экспресс-отчет после обработки события " + event + " не был изменён"); }; }; // Установим признак того, что экспресс-отчёт не был изменён moduleObject.setIsChanged(null); // Обработаем событие потери фокуса полями ввода формы moduleObject.blur(); // Проверим, изменён ли экспресс-отчёт this.defineIsChanged("blur"); // Обработаем событие передачи фокуса модулю или его элементам moduleObject.focus(); // Проверим, изменён ли экспресс-отчёт this.defineIsChanged("focus"); // Обработаем событие потери фокуса модулем или его элементом moduleObject.focusout("focusout"); // Проверим, изменён ли экспресс-отчёт this.defineIsChanged();
В результате выполнения примера было выявлено, что обработчики событий blur и focusout не влияют на признак изменения экспресс-отчёта, а обработчик события focus устанавливает признак, что экспресс-отчёт изменён:
Экспресс-отчет после обработки события blur не был изменён
Экспресс-отчет после обработки события focus был изменён
Экспресс-отчет после обработки события undefined не был изменён
См. также: