che ho avuto successo variabile con animate
, ma ha scoperto che utilizzando il suo costruito nel callback più jQuery di css
sembra funzionare per la maggior parte dei casi.
Prova questa funzione:
$(document).ready(function() {
$.fn.animateHighlight = function (highlightColor, duration) {
var highlightBg = highlightColor || "#FFFF9C";
var animateMs = duration || "fast"; // edit is here
var originalBg = this.css("background-color");
if (!originalBg || originalBg == highlightBg)
originalBg = "#FFFFFF"; // default to white
jQuery(this)
.css("backgroundColor", highlightBg)
.animate({ backgroundColor: originalBg }, animateMs, null, function() {
jQuery(this).css("backgroundColor", originalBg);
});
};
});
e chiamano in questo modo:
$('#exampleDiv').animateHighlight();
testato in IE9, FF4, e Chrome, utilizzando jQuery 1.5 (non è necessario plugin di interfaccia utente per questo). Non ho nemmeno usato il plug-in jQuery: ne avresti bisogno solo se desideri utilizzare i colori con nome (ad esempio 'yellow'
anziché '#FFFF9C'
).
possibile duplicato del [jQuery animare backgroundColor] (http://stackoverflow.com/questions/190560/jquery -animate-backgroundcolor) – mercator