Erstellen einer Animation zum Auslösen eines Ereignisses mit Javascript und CSS

Johanna

Ich bin neu in der Verwendung von Javascript und CSS und versuche derzeit, eine kleine Animation zu erstellen, die beim Ereignisaufruf ausgelöst wird. Die Animation ist einfach und ändert nur die Transparenz eines Bildes. Mein Problem ist, dass die Animation nur jedes Mal funktioniert, wenn die Funktion aufgerufen wird.

Eine Funktion namens "puls ()" wird jedes Mal aufgerufen, wenn die Animation ausgeführt werden soll.

 <script>
    function pulse() {
      $('.transform').toggleClass('transform-active');
    }
 </script>

Das CSS sieht folgendermaßen aus:

.lock-image {

}

.transform {
  -webkit-transition: all 1s ease-in-out;  
  -moz-transition: all 1s ease-in-out;  
  -o-transition: all 1s ease-in-out;  
  -ms-transition: all 1s ease-in-out;  
  transition: all 1s ease-in-out;
}

.transform-active {
  /*animation-delay: 2s;*/
  animation-iteration-count: 1;
  animation: pulse 0.5s;
  animation-direction: alternate;
}


@keyframes pulse {
  0% {
    opacity: 1;
  }
  50%{
    opacity: 0.3;
  }
  100% {
    opacity: 1;
  }
}

Das Bild, auf dem die Animation ausgeführt wird, wird folgendermaßen erstellt.

  <div class="lock-image transform">
    <img id="myImage" src="pic_locked.png" class="img-responsive " style="display:inline" alt="Lock" width="100" height="80">
  </div>

Wie kann ich den Code so ändern, dass die Animation jedes Mal ausgeführt wird, wenn der Funktionsimpuls () aufgerufen wird?

George

Sie können einen Ereignishandler hinzufügen, der behandelt wird, wenn die Animation endet, um die Klasse zu entfernen. Für das Beispiel habe ich das Bild in ein rotes Div geändert

function pulse() {
  $('.transform').addClass('transform-active');
}

$('.transform').on('webkitAnimationEnd otransitionend oTransitionEnd msTransitionEnd transitionend', function() {
  $(this).removeClass('transform-active');
})
#myImage {
  display: block;
  background-color: red;
  width: 100px;
  height: 80px;
}

.transform {
  -webkit-transition: all 1s ease-in-out;
  -moz-transition: all 1s ease-in-out;
  -o-transition: all 1s ease-in-out;
  -ms-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
}

.transform-active {
  /*animation-delay: 2s;*/
  animation-iteration-count: 1;
  animation: pulse 0.5s;
  animation-direction: alternate;
}

@keyframes pulse {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.3;
  }
  100% {
    opacity: 1;
  }
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="lock-image transform">
  <div id="myImage"></div>
</div>
<br/>
<button type="button" onclick="pulse()">Pulse</button>

Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.

Bei Verstößen wenden Sie sich bitte [email protected] Löschen.

bearbeiten am
0

Lass mich ein paar Worte sagen

0Kommentare
LoginNach der Teilnahme an der Überprüfung

Verwandte Artikel

Alternative zum falschen Auslösen eines Ereignisses

Auslösen und Abhören eines Ereignisses

Best Practice zum Auslösen eines modalen Ereignisses von einer Komponente

Lösung zum Auslösen eines Ereignisses zwischen Container und Element?

Swift3 Dynamische Codierung mit mehreren Tasten zum Auslösen eines Ereignisses

Hinzufügen eines onclick-Ereignisses zum HTML <a> -Tag mit PHP und Aufrufen der Funktion in einer JavaScript-Datei

Auslösen einer CSS-Animation erneut mit einem JavaScript-Ereignis

Auslösen einer CSS-Animation mit useRef() in React

`this` gehört zum Fensterobjekt beim Auslösen eines Ereignisses

Verwenden von setTimeOut bei Benutzereingaben zum Auslösen eines Ereignisses

Aufruf eines Ereignisses beim Auslösen einer API

Kann keine CSS-Animation mit Javascript auslösen

Auslösen eines Onclick-Ereignisses mit einem mittleren Klick

Programmgesteuertes Auslösen eines ng-change-Ereignisses aus Javascript

Auslösen eines Ereignisses beim Ziehen einer Route (z. B. neuer Wegpunkt) in der Google Maps JavaScript API JavaScript

Erstellen einer Lambda-Funktion zum Auslösen eines Codebuild-Projekts mithilfe von Nodejs

CSS-Übergang mit Javascript auslösen und umkehren

Verwendung von Task <T> Auslösen eines Ereignisses und Warten auf das Beenden des Ereignisses

Datei erstellen und Download in Javascript auslösen

Auslösen einer Ausnahme beim Erstellen eines F # -Datensatzes mit ungültigen Werten

Erstellen einer Produkttabelle und eines Zählers mit Javascript

Verwenden von Kotlin und Firebase zum Auslösen einer sendEmailVerification mit onAuthStateChanged-Rückruf

Ich möchte eine Schaltfläche zum Auslösen eines Links mit jquery/JavaScript

Erstellen einer Matrix mit variabler Dimension und dann Erstellen eines Algorithmus zum Zuweisen ihrer Werte in Python

HTML5 erforderliches Attribut zum Auslösen eines JQuery-Ereignisses

AWS IOT-Analyse zum Auslösen eines Ereignisses, wenn sich der Status des Attributs ändert

Verschiedene Möglichkeiten zum Auslösen eines benutzerdefinierten Ereignisses in .NET Framework

Auslösen eines Ereignisses vom übergeordneten zum untergeordneten Element in Polymer 2.0

Auslösen eines Ereignisses zum Hosten der WPF-Anwendung über die Webbrowser-Steuerung

TOP Liste

heißlabel

Archiv