jQuery Animation wird nicht auf ein Element laufen
-
16-09-2019 - |
Frage
Ich habe folgenden jQuery-Code, der ausgeführt wird, wenn ich eine Option in einem Auswahlfeld bin klicken:
$('#name, #account, #kid')
.attr('disabled', 'disabled')
.css('background-color', '#ffffcc')
.animate({ backgroundColor:'#ffffff' }, 1000);
Dieser Code nimmt die drei Eingabefelder #name
, #account
und #kid
, deaktiviert sie, Hintergrundfarbe ändern und dann verblasst Hintergrund-Farbe weiß. Ich verwende das jQuery Farbe Plugin, das mir erlaubt, Farben zu verblassen.
Das Problem ist, dass, wenn eine Website frisch geladen wird, und ich bin Wechsel der gewählte Option der Auswahl, es deaktiviert alle drei Felder ändert Hintergrund-Farbe und, aber das erste Element #name
nicht verblassen Hintergrund-Farbe Weiß. Nur die beiden folgenden.
Aber wenn ich erneut versuchen, das Auswahlfeld Option zu ändern, es funktioniert perfekt, jedes Mal! So wird das Problem tritt nur beim ersten Mal nach einer Seite neu geladen. Jeder erlebt sonst gleich vor?
Hier ist die jQuery in seinem ganzen:
$('#receiver').change(function(){
var selected = $(this).children('option:selected').val();
if (selected == 'new')
{
$('#name, #account, #kid').val('').attr('disabled', '');
}
else
{
$.getJSON("<?php echo site_url('ajax/get_receivers') ?>",
function(data){
$.each(data, function(i, data){
if (data.id == selected)
{
$('#name').val(data.name);
$('#account').val(data.account);
$('#kid').val(data.kid);
$('#name, #account, #kid')
.attr('disabled', 'disabled')
.css('background-color', '#ffffcc')
.animate({ backgroundColor:'#ffffff' }, 1000);
}
});
});
}
});
#receiver
wobei das Auswahlfeld.
Lösung
Sowohl WFM mit Ajax / json Anfrage
http://jsbin.com/egani -> mit jQuery UI
http://jsbin.com/ekura/ -> mit alter jQuery Farbe Plugin (2 Jahre + )