2010-09-04 7 views

Répondre

4

En supposant que vous avez ceci au début:

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

lorsque vous appelez:

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

vous obtiendrez:

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

tout:

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

fait:

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

, oui il y a une différence.

+0

Ce n'est pas ce que dit [ici] (http://docs.jquery.com/Show). –

+3

Je viens de l'essayer et c'est en fait correct. Je pense que la documentation de jQuery est un peu floue. Lorsque vous appelez show() après avoir appelé hide(), la valeur est restaurée à ce qu'elle était initialement. Si vous appelez show() et hide() n'a jamais été appelé, il définit la valeur d'affichage sur une chaîne vide. (voir: http://james.padolsey.com/jquery/#v=1.4&fn=show) – takteek

3

De l'jQuery show() documentation:

Ceci est à peu près équivalent à appeler Css (« display », « bloc »), à l'exception que la propriété d'affichage est restauré à ce qu'il était au départ. Si un élément a une valeur d'affichage en ligne, puis est masqué et affiché, il sera de nouveau affiché en ligne.

Questions connexes