IE中的jquery对话框没有显示

时间:2013-01-08 06:20:17

标签: jquery jquery-ui

我无法在IE中获得要渲染的模态对话框。屏幕变暗(如禁用)但对话框本身无处可寻。 Chrome中的行为符合预期;屏幕变暗并出现对话框。我已经多次清除IE和Chrome中的缓存,以确认这不是某种陈旧的参考问题。

我还用.hide()。show()和$(“#waiting1”)。对话框('打开')玩游戏,但效果相同。

<html>
   <head>

    <script src="/scripts/jquery-1.8.0.min.js" type="text/javascript"></script>
    <script src="/scripts/jquery-ui-1.8.23.custom.min.js" type="text/javascript" ></script>

    <link rel="stylesheet" type="text/css" href="/css/themes/base/jquery.ui.all.css" >

            <script type="text/javascript">

                $(function () {      

                    $("#waiting1").dialog();

                });

           </script>
    </head>
    <body>
           <div id="waiting1" style="display:none;">
               <center>
                    <img src="black_loading.gif" />
               </center>
           </div>


     </body>

4 个答案:

答案 0 :(得分:0)

您对jquery.ui.all.css的引用没有结束。

如果它在Chrome和其他浏览器中运行,它也应该在IE中正常运行(可能在用户界面上差异很小)。

答案 1 :(得分:0)

我猜你的主题或CSS有问题会覆盖它。这个小提琴近似于你的场景,它适用于IE8和10:http://jsfiddle.net/yrFWJ/2/

<span class="click">Click</span>

<div id="waiting1" style="display: none;">
  <center>Nice!</center>
</div>

<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.9.2/jquery-ui.min.js"></script>

<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.9.0/themes/base/jquery-ui.css" type="text/css" media="all" />

$('.click').click(function() {
  $("#waiting1").dialog();
});

答案 2 :(得分:0)

我有类似的问题,并注意到jquery.ui.all之后包含的样式表似乎被忽略了。说明:IE限制样式表和导入样式表的数量(请参阅http://support.microsoft.com/kb/262161)。

答案 3 :(得分:0)

您的示例代码似乎与您的描述不符。例如,我没有看到您将对话框定义为模态。无论如何,在您给出的示例中,您已将div的显示设置为要隐藏在样式属性中。你不应该这样做。让jQuery UI为您处理显示格式。

你有这个:

       <div id="waiting1" style="display:none;">
           <center>
                <img src="black_loading.gif" />
           </center>
       </div>

尝试将其更改为:

       <div id="waiting1">
           <center>
                <img src="black_loading.gif" />
           </center>
       </div>