Предотвращение потери фокуса в iframe при вызове родительской функции - PullRequest
0 голосов
/ 08 сентября 2018

Есть много вопросов о том, как предотвратить кражу фокуса в iframe, но я сталкиваюсь с тем, что мой iframe вызывает оконную функцию для родителя, а родитель крадет фокус, таким образом, вызывая Редактор tinymce для «скрытия».

AngularJS работает в родительском окне, а редактируемый контент tinyMCE запускается в дочернем iframe. Когда пользователь нажимает на редактируемую область в iframe, я отправляю данные в родительское окно, которое изменяет некоторые данные области и выполняет $scope.$apply(). Когда срабатывает $ scope. $ Apply (), (я догадываюсь), потому что в родительском окне есть изменение DOM, оно крадет фокус. Это приводит к исчезновению встроенного крошечного MCE, потому что фокус исчез.

Есть ли способ предотвратить кражу области видимости изменением DOM в родительском элементе?

ОБНОВЛЕНИЕ : На самом деле я просто удалил код, который обновляет DOM во время $ scope. $ Apply (), и он все еще теряет фокус. Я думаю, что это строго связано с $ scope. $ Apply () (не изменения DOM)

Ответ на на этот вопрос не имеет для меня никакого эффекта, просто требуется 2 секунды, чтобы потерять фокус.

ДОПОЛНИТЕЛЬНОЕ ОБНОВЛЕНИЕ Я создал этот plunkr, и я не могу повторить проблему https://plnkr.co/edit/uNSB9KFsg5i1uJEHryA7?p=preview - Кажется, здесь все работает нормально. Я сделаю еще несколько расследований.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...