.show()和.css({'display':'block'})之间有什么区别?

时间:2010-09-04 08:53:06

标签: jquery css

我只是通过更改

获得了一个可以工作的脚本
$('#thisElement').show();

$('#thisElement').css({'display':'block'});

其中#thisElement已加载为display:none;

这两个表达式有根本区别吗?

2 个答案:

答案 0 :(得分:4)

假设你在开头有这个:

<span id="thisElement" style="display: none;">Foo</span>

致电时:

$('#thisElement').show();

你会得到:

<span id="thisElement" style="">Foo</span>

,同时:

$('#thisElement').css({'display':'block'});

确实

<span id="thisElement" style="display: block;">Foo</span>

所以,是的,这是有区别的。

答案 1 :(得分:3)

来自jQuery show() documentation

  

这大致相当于调用.css('display','block'),除了display属性恢复到最初的状态。如果元素的显示值为内联,则隐藏并显示,它将再次以内联方式显示。