2016-08-14 2 views
0

В настоящее время у меня есть серия контейнеров с флип-анимацией, которая активируется при наведении. Я бы хотел, чтобы они не только активировали при наведении курсора, но также и на кнопку javascript, нажав кнопку, которая будет использовать одну кнопку для переключения всех флип.Кнопка Javascript для переключения нескольких анимаций css

HTML:

<div class="flip-container" ontouchstart="this.classList.toggle('hover');"> 
      <div class="flipper"> 
       <div class="front"> 
        <a href="link1.html"> 
         <img src="images/frontimg1.jpg"/> 
        </a> 
       </div> 
       <div class="back"> 
        <div class="fliplinks"> 
         <a href="link1.html"> 
          <p>text1</p> 
         </a> 
        </div> 
       </div> 
      </div> 
     </div> 

Они повторяются столько объектов, которые я использую и опирающихся на следующий CSS:

.flip-container { 
    float:left; 
    margin: 7.5px; 
} 
/* entire container, keeps perspective */ 
.flip-container { 
    perspective: 1000px; 
} 
/* flip the pane when hovered */ 
.flip-container:hover .flipper, .flip-container.hover .flipper { 
    transform: rotateY(180deg); 
} 

.flip-container, .front, .back { 
    width: 210px; 
    height: 210px; 
} 

/* flip speed goes here */ 
.flipper { 
    transition: 0.6s; 
    transform-style: preserve-3d; 

    position: relative; 
} 

/* hide back of pane during swap */ 
.front, .back { 
    backface-visibility: hidden; 

    position: absolute; 
    top: 0; 
    left: 0; 
} 

/* front pane, placed above back */ 
.front { 
    z-index: 2; 
    /* for firefox 31 */ 
    transform: rotateY(0deg); 
} 

/* back, initially hidden pane */ 
.back { 
    transform: rotateY(180deg); 
} 

Edit: jsfiddle как спрошено: https://jsfiddle.net/futbyyef/

+0

Если вы предоставите jsfiddle, было бы проще реорганизовать его, чтобы достичь того, чего вы хотите. Вы должны сделать класс, вызывающий тот же эффект, что и зависание; и с помощью javascript вы можете переключать этот класс на все элементы (сразу или с определенной задержкой в ​​зависимости от эффекта, который вы используете). –

ответ

0

Предполагая, что все они имеют класс .flip-container, вы можете добавить такую ​​функцию.

<script> 
    $('.toggle-button').click(function(){ 
     $('.flip-container').toggleClass('hover'); 
    } 
</script> 

Тогда вам просто нужно включить кнопку для ее переключения. Что-то наподобие

<button class="toggle-button">Test Button</button> 

Работает fiddle. Не забудьте включить jQuery на свою страницу.

+0

Это похоже на то, что я ищу, я попытаюсь осуществить его сегодня вечером. Вы говорите, что мне нужно добавить jQuery в мой заголовок или только теги js script на странице? – Chris

+0

В заголовке. – GentlemanMax

+0

Я предполагаю, что вы имеете в виду что-то вроде вашего кнопку <класс = «тест-кнопка»> Test звучит хорошо для меня. Благодаря! – Chris

Смежные вопросы