Non sono del tutto sicuro che sia possibile o meno, sono piuttosto esperto quando si tratta di jQuery e JavaScript in generale, ma questo mi ha bloccato. Ho creato un semplice plug-in che cancella un input di testo su focus e quindi visualizza il valore predefinito se non è stato inserito nulla.Valore di dissolvenza del testo all'interno del campo di testo usando jQuery
È possibile dissolvere solo il testo stesso all'interno del testo immesso, e non l'intero campo stesso? Tutti i tentativi sembrano far sì che il campo di testo stesso si dissolva e alla fine nascondano l'elemento dalla vista.
Ho trovato una soluzione per l'utilizzo di span contenenti il valore predefinito e posizionandoli in modo assoluto sull'input del testo, nascondendoli e mostrandoli a seconda che un utente abbia inserito un testo o meno. Preferirei un approccio molto semplice se ne esiste uno.
Modifica
Utilizzando la jQuery funzione che è in jQuery UI o disponibili come plugin per jQuery animare, è possibile animare il colore del testo per essere il colore dell'ingresso sulla messa a fuoco e la sfocatura del campo (come sottolineato di seguito). Ecco il codice che sto usando nel caso in cui volessi sapere come.
obj.bind("focus", function() {
if ($(this).val() == oldValue) {
$(this).animate({ color: '#E8DFCC' }, 1000).val('');
}
});
obj.bind("blur", function() {
if ($(this).val().length <= 3) {
$(this).animate({ color: '#56361E' }, 600).val(oldValue);
}
});
Hai già trovato la soluzione migliore per il cross-browser qui, un elemento posizionato in alto, non sicuro che tu possa migliorarlo mentre lavori ancora ovunque. –