2015-10-06 2 views
0

Я использую ngDialog для отображения всплывающего окна в моем веб-приложении AngularJS. У меня возникла проблема, которая возникает только в Chrome примерно в 20% случаев. У Firefox и IE нет этой проблемы.ngDialog - класс тела не меняется при открытии/закрытии диалогового окна в Chrome

Когда диалог открыт, ngDialog добавляет class="ngdialog-open" к тегу body, например: <body class="ngdialog-open">. Когда диалог закрыт, body вернется к <body class>. Они должны существовать, как ожидается, не иметь проблемы.

Однако в Chrome это изменение происходит примерно в 80% случаев. Другие 20% времени, тег body будут по-прежнему иметь класс dialog-open даже после закрытия диалога. Или наоборот - я открыл диалог, но body не получает новый класс. Когда это произойдет, я должен щелкнуть по странице, чтобы взаимодействовать с ней. Например, если бы я хотел щелкнуть текстовый ввод, мне нужно было бы дважды щелкнуть по нему, чтобы взаимодействовать с ним. Однако, как только я сделал этот первоначальный щелчок, body class изменится на ожидаемое значение, и я могу взаимодействовать со страницей, как ожидалось.

+1

никогда не использовал этот модуль, но всякий раз, когда такие проблемы, как это возникают всегда лучше проверить отслеживание проблем в репо. Скорее всего, у других есть аналогичные проблемы, а также проверка совместимости версий. – charlietfl

+0

@charlietfl спасибо за совет, включил новейшую версию, и теперь это не так уж сложно. не стесняйтесь публиковать это как ответ для некоторых точек ... – mjoyce91

ответ

0

Если у вас есть сомнения, проверьте отслеживание проблемы репо, а также проверьте совместимость версий между угловым использованием и зависимостью модуля.

Я знаю, что угловое 1,4 ngAnimate переписывания было ввести критические изменения в некоторых модулях