Отображение диалогового окна Dojo через подключаемый модуль Google Планета Земля

Распространенная проблема: я пишу веб-приложение с Dojo, в центре которого находится Google Планета Земля (через подключаемый модуль), и я хочу отображать диалоговые окна Dojo (например, подтверждения и формы) поверх экрана Google Планета Земля. Виджет dijit.Dialog неизбежно отображается под отображением Земли, даже если диалоговое окно имеет очень большой z-индекс, а контейнер Земли (и внутренние элементы) имеют отрицательные z-индексы.

Этот вопрос актуален — кажется, из-за природы плагина IFramey требуется прокладка — но мне интересно, есть ли что-то более конкретное для Dojo? Это распространенная проблема, с которой ExtJS кажется решил, и я думал, что Dojo тоже.


person orlade    schedule 16.09.2012    source источник


Ответы (1)


Эта ссылка была актуальна в конце концов. Некоторое время я поигрался с JavaScript и, в конце концов, углубился в расширение виджета dijit.Dialog. Простого добавления атрибута _shim и периодического его обновления было достаточно, чтобы все работало без сбоев! Основываясь на моем опыте попыток сделать что-то подобное с Adobe Flex, это похоже на сбывшуюся мечту.

Вы можете взглянуть на источник моего диалогового окна Shimmy на Bitbucket.

  Шимми-диалог в действии!

person orlade    schedule 16.09.2012
comment
Также следует отметить, что у Firefox, похоже, нет такой проблемы; диалоговое окно Dijit по умолчанию может нормально отображаться поверх рамки плагина, однако рендеринг довольно запаздывает при перетаскивании диалогового окна. Однако добавление прокладки в Firefox не сильно влияет на производительность (как ни странно). - person orlade; 20.09.2012