2010-07-21 16 views
3

J'utilise ce code pour faire disparaître un certain div (#extras).En utilisant .fadeOut(), mais je veux qu'il reste fané?

$(document).ready(function() { 

      for(var i = 1; i <= pageLimit; i++) { 
       $('body').append('<div id="page' + i + '" name="page' + i + '" class="touch"></ div>'); 
      } 

      $('body').append('<div id="extras" class="showUp">..all content needed goes in heree...</div>'); 
      $(window).load(function() { 
       $('div#extras').delay(100).fadeOut(4000); 
      }); 
}); 

CSS:

div#extras { 
    height:100%; 
} 

&

body > div.showUp { 
    display: block !important; 
    height:100%; 
} 

Il disparaît bien, mais apparaît alors en arrière une fois le fait de l'animation à la décoloration. Comment pourrais-je le faire rester fané? Dans une autre fonction que je l'aurai fondu avant.

Voici le css je fait défaut de l'échantillon jQTouch je travaille sur ..

body > * { 
background: transparent; 
-webkit-backface-visibility: hidden; 
display: none; 
position: absolute; 
left: 0; 
text-align:center; 
width: 100%; 
-webkit-transform: translate3d(0,0,0) rotate(0) scale(1); 
height: 100% !important; 
} 

Merci!

Le fait que les extras div a été inséré dans la page par la fonction .append() a-t-il quelque chose à voir avec le fait de le faire revenir en arrière?

+0

La méthode '.fadeOut()' ne devrait pas faire cela. Quelque chose d'autre doit être en train de disparaître d'une façon ou d'une autre. – EndangeredMassa

Répondre

2

J'ai eu du succès en utilisant:.

$ ("élément de #") fadeTo ("rapide", 0.33);

Le paramètre de vitesse peut être réglé sur "lent" si vous voulez que l'évanouissement prenne plus de temps.

+1

Merci! J'ai fini par utiliser \t $ ('div # extras'). Delay (100) .fadeTo (3000, 0); " – Annie

+0

" rapide "= 200 millisecondes," lent "= 600 millisecondes, la valeur par défaut est 400 millisecondes si une autre chaîne est utilisée (pas un nombre). Le nombre est en millisecondes. –

0

que diriez-vous simplement en utilisant .fadeTo (0) (ou un autre numéro si vous le voulez montrer 'opaque' c.-à-.fadeTo (250) etc ...

votre solution serait:

$("#extras").fadeTo(500, 0); 

cela pourrait être une avenue à explorer

jim

[modifier] -. voir http://api.jquery.com/fadeTo/

+0

Juste essayé cela, il le fait disparaître sans se faner du tout, mais il reste invisible – Annie

+0

Annie, dans ce cas alors, essayez: .fadeTo (500, 0) où 500 est la durée requise en millisecondes (ce qui serait la moitié une seconde devrait fonctionner !! :) [voir la modification ci-dessus] –

+0

"fast" = 200 millisecondes, "slow" = 600 millisecondes, la valeur par défaut est de 400 millisecondes si une autre chaîne est utilisée (pas un nombre). Le nombre est en millisecondes. –