может ли диалог додзё вызвать другой диалог додзё?
Вложенность диалогов Dojo
Ответы (4)
dojo 1.3 поддерживает только один модальный диалог за раз, поэтому, хотя, да, одно диалоговое окно может открывать другое, закрытие второго разрушает модальность первого.
Это происходит потому, что dojo.Dialog использует один глобальный объект подложки, который обеспечивает экран между диалоговым окном и всем остальным на странице. Вы можете заставить его работать, если хотите создать свою собственную основу для каждого диалога и самостоятельно управлять z-индексами.
Я понимаю, что это будет исправлено в версии 1.4.
Да, диалоговое окно может открывать другое диалоговое окно, но тогда у вас будет отображаться два диалоговых окна - они не являются модальными между собой.
Поскольку это не то поведение, которое я желаю, я обошел это, создав свой собственный обработчик - он сначала проверяет наличие открытого диалогового окна, и, если он находит его, закрывает его (и помещает в стек) перед открытием нового диалогового окна. . Когда он закрывает один, он смотрит на стек и повторно открывает диалоги ниже в стеке.
До Dojo 1.4 можно было открывать несколько диалогов, но в этом случае возникают проблемы с доступностью (tabIndex
обрабатывается неправильно) - поэтому, если вам нужно, чтобы ваше приложение было доступно и поддерживало несколько диалогов, вам необходимо перейти на Dojo 1.4, когда оно выходит.
да, вы можете сделать это в dojo 1.6 и во всех вышеперечисленных версиях