Good Morning:
I’m trying to create a event that I saw on another website for a website that I am currently developing . The link is below: http://www.ralphlauren.com/family/index.jsp?categoryId=1760809&cp=1760781&ab=ln_men_cs1_polos
As you can see, when you click a colored swatch below, the image above changes to match the color. How is this done? What “event” is this in JavaScript? Is there an easier way to do this in J-Query? Any information you have or a solution, would be greatly appreciated.
Thanks.
Hi Robby,
Welcome to Sitepoint.
You want to listen to a click event on the colors and change some state on the image to make it change, the src of the image or a class if you are using background images in css.
Here’s a pretty crude example using jQuery.
<img id="shirt" src="white.jpg">
<ul id="colors">
<li>red</li>
<li>green</li>
<li>blue</li>
</ul>
var shirts = {
red: 'red.jpg',
green: 'green.jpg',
blue: 'blue.jpg'
}
var shirt = $('#shirt')[0];
$('#colors li').click(function() {
var color = $(this).html();
shirt.src = shirts[color];
})
The image should change right within the page…correct? On the click function?
Thanks a million, I’m going to try this solution out.
Yes, you want to update something on the image when you click a color.
Have a go, if you get stuck post a link to your page and we’ll take a look.