2011-03-09 4 views
0

Voici ce que j'ai beaucoup, ce qui fonctionne:aimerait utiliser .fadeTo avec élégance

var X = $('#myID input:checked').length; 
if (X) { 
    $('input[name=Save]').show(); 
} else { 
    $('input[name=Save]').hide(); 
} 

Ce que je voudrais faire est d'écrire cela en utilisant la méthode élégante .fadeTo.

$('input[name=Save]').fadeTo(Y) 

Où Y = 1 si X> 0 et Y = 0 si X = 0.

Répondre

1

Est-ce ce que tu cherches? Ce n'est pas très élégant à lire, mais il est petit (je ne l'ai pas testé, donc me dire si ça ne marche pas):

$('input[name=Save]').fadeTo('fast', (X > 0) ? '1' : '0') 

Ce truc aléatoire jargon du milieu est essentiellement ce que vous avez écrit à l'origine, mais dans une syntaxe compacte. Voici un article de Wikipedia à ce sujet, si vous voulez le lire: http://en.wikipedia.org/wiki/%3F:#JavaScript

+0

Je pense que je dois avoir 'vite' ou 'lent' comme premier argument, non? –

+0

Je ne sais pas vraiment à ce sujet ... – Blender

1

Sauf si vous voulez une opacité partielle, il suffit d'utiliser fadeIn('slow')/fadeOut('slow') au lieu de masquer/afficher

+0

Je pense que ça marchera si j'utilise fadeTo ('fast', X) –

Questions connexes