jQuery function to flip an image on click

css, html, jquery

Solution

It's pretty simple to add this to your current solution:

CSS

Replace the `:hover` state with a class:

.f1_container:hover .f1_card {}
/* becomes */
.f1_container.active .f1_card {}

JavaScript

Add this JavaScript part that toggles the new class on click:

$('.f1_container').click(function() {
    $(this).toggleClass('active');
});

Demo

Try before buy

Problem

I've written some css to flip an image. It's working fine, but I want to convert it to a function so that I can call that function in an `onclick` event. A demo of what I have so far can be found here: http://jsfiddle.net/Spokey/ggUue/1/ Here's the HTML for the image: ``` <div class="f1_container"> <div class="shadow f1_card"> <div class="front face"> <img src="http://media-cdn.tripadvisor.com/media/photo-s/03/48/0b/14/dolphin-view-chalets.jpg" style="height: 281px; width: 450px;" /> </div> <div class="back face center">Some text inside here</div> </div> </div> ``` This is the CSS: ``` .f1_container { position: relative; margin:10px; width: 450px; height: 281px; z-index : 1; float:left; } .f1_container { -webkit-perspective: 1000; perspective: 1000; } .f1_card { width: 100%; height: 100%; -webkit-transform-style: preserve-3d; -webkit-transition: all 1.0s linear; transform-style: preserve-3d; transition: all 1.0s linear; } .f1_container:hover .f1_card { -webkit-transform: rotateY(180deg); transform: rotateY(180deg); box-shadow: -5px 5px 5px #aaa; } .face { position: absolute; width: 100%; height: 100%; backface-visibility: hidden; -webkit-backface-visibility: hidden; } .face.back { display: block; -webkit-transform: rotateY(180deg); transform: rotateY(180deg); box-sizing: border-box; color: white; text-align: center; background-color: #aaa; } body{width:2000px} ```

Original source