透明的嵌套对话框jquerymobile

时间:2011-11-04 12:36:52

标签: jquery jquery-mobile modal-dialog

我正在尝试使用jquery mobile rc2创建一个模态对话框 我设法摆脱了默认的丑陋灰色背景,现在对话框出现在创建它的页面上。您可以look here知道如何执行此操作。 问题是我有一个内部有一些<li>元素的对话框,每个元素都会打开另一个对话框。第二个对话框不会打开过去的对话框。相反,我得到的白色背景甚至比灰色背景更丑 如何使嵌套对话框显示在具有透明背景的父对话框上?我应该在打开新对话框之前关闭第一个对话框吗? 您可以查看代码here 提前谢谢!

3 个答案:

答案 0 :(得分:1)

没有时间去研究它,但似乎它并不是真正的“额外”白色叠加,而是#main页面变得不可见,背景的白色是实际上是身体元素。所以问题是为什么#main变得不可见,我想。希望这在某种程度上有所帮助=)

答案 1 :(得分:1)

即使他没有为问题提供任何解决方案,@ pak也是对的。 但是我确实按照以下步骤解决了问题:
1)将.inactive类添加到父页面

.inactive
{
    display: block !important;
}

2)当你打开任何子弹出窗口时,再次添加该类

3)编辑.ui-dialog和.ui-dialo-overlay类,如下所示:

.ui-dialog
{
    background-color: rgba(34,34,34,0.25) !important;
}

.ui-dialog.ui-overlay-a 
{
    background-image: none;
}

4)关闭最后一个弹出窗口时,删除.inactive类以恢复原始不透明度

希望这对某人有所帮助,但希望jquery mobile更能改变这种奇怪的行为!

答案 2 :(得分:1)

请参阅http://tqcblog.com/2012/04/19/transparent-jquery-mobile-dialogs/以获取完整的解决方案。它与andreapier解决方案的想法相同,但也提供了小的jQueryMobile javascript钩子来绑定对话框的打开和关闭。

使用最新的jQueryMobile(1.1.0)。

我建议考虑删除旧版移动浏览器的不透明度上的花式css过渡。