Non ho capito bene se è un bug o una cosa voluta, comunque sia rimane il fatto che il metodo animate() di jQuery non funziona con alcuni attributi CSS, tra cui background-color (che nella versione camelize è backgroundColor). Ad esempio il seguente codice non produce nessun effetto:
1 2 3 4 5 |
1 | $('div#box').animate( {backgroundColor: "#f90"} ); |
Per risolvere il problema è necessario installare un’estensione: jQuery Color Animations. Questa permette di eseguire “animazioni” sull’attributo backgroundColor e non solo:
backgroundColorborderBottomColorborderLeftColorborderRightColorborderTopColorcoloroutlineColor








4
Non so dire se è una mancanza voluta o meno quella dell’animare quelle proprietà ma tant’è che a volte diventa proprio fastidioso. Comunque se posso consigliare, anzichè usare il color plugin (che pure è ottimo), sarebbe meglio usare jQueryUI (solo il core, per avere lo stesso effetto) perchè oltre al codice di color c’è anche qualche fix sulle trasparenze.
@Luca: ottimo suggerimento! L’ho provato subito e funziona! Per chi usa le jsapi di Google basta inserire:
2
3
4
google.load("jquery", "1.2.6");
google.load("jqueryui", "1.5.2");
</script>
@Giovambattista Fazioli: azz non sapevo che google forniva anche ui! Non si finisce mai di imparare
@Luca:
Ed è anche veloce…
Había arrancado a hacer pavadas en mootools, pero me pasé a jQuery porque leí en varios lados que se veía mas robusta y más eficiente.
Hasta ahora me he llevado un par de decepciones, características visuales que en moo venian incluídas y que jQuery incluye con plugins, como el animate de backgroundColor y los efectos de easing ( rebote, backins, etc…)
SI me puedieran aclarar lo que comentó lucas me vendría 10 puntos.
Muchas gracias
Esteban López Adriano.
Fúnes – Santa Fe – Argentina.