Last night I started to work on WordPress theme for blog and I got an idea that every post should have their own background color and that maybe those colors can be in gradient. Since that that’s very boring to do manually, I’ve decide to write jQuery plugin which will do that job.
Gradienter is easy to use, and with small effort you can have really interesting color effect on your page.
Since that this is jQuery plugin, we should include jQuery and Gradienter JavaScript files in our page:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> <script type="text/javascript" src="gradienter.js"></script>
After this, at the bottom of the page we have to apply Gradienter on desired elements and optionally set parameters.
$(element).gradienter();
Gradienter have only three parameters:
color_start: 'FFFFFF' // first color in gradient color_end: '000000' // last color in gradient prop: 'background-color' // on which CSS property should apply gradient
So, if we want that all elements with ‘box’ class have gradient started from #56B2CB and finished with #164E5D, all we have to do is next:
$('.box').gradienter({ color_start: '56B2CB', color_end: '164E5D' });
Note that colors are in HEX format, without #.
Changing the ‘prop’ parameter gradient can be applied to all CSS properties that have color (background-color, color, border-color).
@Winkyboy
did you try to open demo page ?
Doesn’t seem to work; testing in Chrome (23.0.1271.97 m)
does not work at all¡¡¡¡¡¡ don not use it
Works great. Will use it on a site if you don’t mind 🙂
Thank you so very much for taking the time to share…very useful, indeed!
Thanks! it’s working fine.
Cheers!
Jacob.
Doesn’t work for me, using Firefox 4.01 and jQuery 1.4.4.
The function appears to think that each element to which the colouring is to be applied is an array of some kind with a valid .length property. i.e.
steps = $(el).length;
But that line always evaluates to 1 for me. Consequently, none of the code inside .each loop below ever executes:
$.each($(el), function(i,item){
FYI, the code sets up lots of global variables, unintentionally. E.g. this line:
var r = g = b = 0;
only sets up r as a local variable. g and b are set to be globals. Other variables in the function have no “var” in their declaration, and so are global.
Simple but very effective writing. Thanks for sharing such a nice post
Thanks very nice and it’s working fine.
Hi
It worked like a sharm! Thank you very much!
It doesn’t work at all.