如何在jquery对话框中使用带有外部CSS文件的dialogClass选项

时间:2012-04-27 00:19:10

标签: jquery css jquery-ui-dialog

我已经意识到,如果你使用外部CSS文件,jquery对话框将不会应用dialogClass定义的任何CSS样式。 ......或者至少不是我这样做的方式。我继续创建一个小提琴,但注意到它在那里工作,然后尝试将我的CSS移动到页面的头部,它工作。有没有办法让jquery对话框从外部CSS文件中应用样式,还是我在html页面中使用CSS? 请提供下面代码工作方式的解决方案(使用html进行初始化器中提供的对话框和对话框选项)。

function test()
{
    var html = "<strong>Hello World!</strong>";
    var $dialog = $('<div></div>').html(html)
        .dialog({ dialogClass: 'myStyle', modal: true, autoOpen: false });

    $dialog.dialog('open');
}

.myStyle
{
    color: #FF0000;
    font-size: 28pt;
    font-family: 'Comic Sans MS';
}


<head>
<script type="text/javascript" src="myexternal.js"></script>
    <link type="text/css" href="core.css" rel="Stylesheet" />
    <link type="text/css" href="lib/jquery-ui-1.8.19.custom/css/ui-lightness/jquery-ui-1.8.19.custom.css" rel="Stylesheet" />   
    <script type="text/javascript" src="lib/jquery-ui-1.8.19.custom/js/jquery-1.7.2.min.js"></script>
    <script type="text/javascript" src="lib/jquery-ui-1.8.19.custom/js/jquery-ui-1.8.19.custom.min.js"></script>
</head>
<body>
    <form id="form2" >
        <div>
            <input id="Button2" type="button" value="Show Dialog" onclick="test();" />
        </div>
    </form>
</body>

1 个答案:

答案 0 :(得分:0)

大声笑问题是你的布局在头部,把jQueryUI css链接放在你自己的核心链接之前。这样首先应用jQueryUI.css,然后将你的css应用到后面,从而进行迟来的更改。

另外,在同一个注释中,如果您的核心js使用jquery,最好让它遵循ur标头中的jquery链接。在添加自己的“添加剂”之前,请先添加“核心库”(又名jQuery&amp; jQueryUI)