当display:none更改为显示时,jquery ui css不会出现:inline

时间:2012-08-02 12:35:12

标签: jquery css jquery-ui dynamic-content

高大家,

在我的基于网络的应用中,我有一个通常为display:none的div,因此它被隐藏起来并且不会占用任何空间。当某些事情发生时,我希望div与类ui-state-highlight ui-corner-all的样式一起出现,我将添加一些动态内容。所以我最初给这个隐藏的div这些类。问题是当我用一些动态内容显示div时,我刚才提到的类的样式就不存在了。

请参阅此小提琴,说明问题所在:http://jsfiddle.net/qR8gK/

所需的结果是单击按钮时显示的div具有与最初可见的样式相同的样式。有谁知道我怎么能这样做?

谢谢!

3 个答案:

答案 0 :(得分:1)

只需使用.show(),而不是手动设置css显示设置。

$('#a').button().click(function() {
    $('#dynamic').show().html('<p>some dynamic content</p>');
});

答案 1 :(得分:1)

代码中的实际问题是因为段落标记。删除<p>并尝试。

$('#a').button().click(function() {
    $('#dynamic').css('display', 'inline').html('some dynamic content');
});​

示例:http://jsfiddle.net/qR8gK/19/

答案 2 :(得分:1)

调用show()方法使其可见。

$('#a').button().click(function() {
    $('#dynamic').html('<p>some dynamic content</p>').show();
});​

工作样本:http://jsfiddle.net/qR8gK/16/