Ready to watch this entire course?
Become a member and get unlimited access to the entire skills library of over 4,971 courses, including more Web and personalized recommendations.Start Your Free Trial Now
- View Offline
- Exporting graphics from Photoshop
- Positioning elements with CSS
- Using the Roundabout plug-in
- Activating the carousel callback
- Detecting the image in focus
- Adding the final touches
Skill Level Intermediate
Now in order for the carousel to be able to tell us what item is in the forefront, we are going to have to add some additional parameters into the roundabout function that creates the carousel. So let's come up inside of the roundabout statement that creates the carousel and after duration, we are going to type a comma. Let's hit a return, and let's add two additional parameters in here. First one is going to be clickToFocusCallback: type true, insert a comma, and on the next line we are going to type clickToFocusCallback: After the colon, type a space, and we are going to be type in the name of a custom function that we want the carousel to run once the child has become the forefront of the carousel.
We are going to type showCaption. Now in our script, after the createCustomButtons function that we created, let's come down here and create another custom function. We are going to call this function ShowCaption, beginning and ending parenthesis, beginning and ending bracket. Let's split this open on the brackets. So once the carousel item rotates around and becomes the forefront, it's going to run this particular function called showCaption, so it's going to come down here and run this.
So to make sure this is working, the first thing we will do is just put an alert in here and ask the carousel what item is in the forefront. So let's start by typing alert, beginning and ending parenthesis; put a few spaces inside of the parenthesis, inside of the alert, let's type a dollar sign, parentheses, tick marks for a string literal, div, pound, carousel. Outside of the parentheses we are going to type .data, beginning and ending parentheses. Inside of the data parentheses, two tick marks for a string literal.
Type roundabout. Outside of the parentheses for data but still inside of the alert parentheses .childInFocus. So what this is going to do is when we click on a teapot in the carousel, clickToFocus is going to be true and then the clickToFocus callback, once the item becomes the item in the forefront, it's going to run showCaption function. That's going to bring us down here, and then we are going to see an alert. Inside of the alert, this instruction here will go back out to the carousel and ask the roundabout for its data about the childInFocus.
So to test this, let's choose File > Save All, back to carousel.html. File > Preview in Browser. So now in the browser when I click on the teapot, it's going to animate. Once it becomes the child in focus, it's going to do the focus callback. It's going to run our alert, and we can see that item number 6 is the child in the forefront now. Let's click OK. I will click on this teapot here, the gold one, and this alert tells me that this is child number 2, so I know that it's the third item in the html list of all of the data being put into the carousel.
However, when I click the right and left arrows, you will notice that function doesn't actually happen. That callback function only happens when we click on the individual item's ClickToFocus of the actual carousel. So at this point we have the carousel triggering the show caption function when the item comes to the front. In the next movie, we will actually update the caption based on the item that's in the front, and then later on, we can hook up the right and left buttons to use those functions as well.