Maison >interface Web >tutoriel CSS >Comment créer une animation d'objet circulaire en rotation à l'aide de CSS et jQuery ?

Comment créer une animation d'objet circulaire en rotation à l'aide de CSS et jQuery ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-11 04:21:18229parcourir

How to Create a Circular Rotating Object Animation Using CSS and jQuery?

CSS pour la rotation circulaire d'objets

Utiliser CSS pour faire pivoter plusieurs objets autour d'un cercle est un défi. Voici la meilleure façon de résoudre ce problème :

Utiliser jQuery

jQuery fournit une solution simple pour faire pivoter n'importe quel nombre d'éléments externes. Voici le code implémenté à l'aide de jQuery :

var radius = 100; // 调整以移动对象进出
var fields = $('.item'),
  container = $('#container'),
  width = container.width(),
  height = container.height();
var angle = 0,
  step = (2 * Math.PI) / fields.length;
fields.each(function() {
  var x = Math.round(width / 2 + radius * Math.cos(angle) - $(this).width() / 2);
  var y = Math.round(height / 2 + radius * Math.sin(angle) - $(this).height() / 2);
  if (window.console) {
    console.log($(this).text(), x, y);
  }
  $(this).css({
    left: x + 'px',
    top: y + 'px'
  });
  angle += step;
});

Utilisation de l'animation CSS

body {
  padding: 2em;
}

#container {
  width: 200px;
  height: 200px;
  margin: 10px auto;
  border: 1px solid #000;
  position: relative;
  border-radius: 50%;
  animation: spin 10s linear infinite;
}

.item {
  width: 30px;
  height: 30px;
  line-height: 30px;
  text-align: center;
  border-radius: 50%;
  position: absolute;
  background: #f00;
  animation: spin 10s linear infinite reverse;
}

@keyframes spin {
  100% {
    transform: rotate(1turn);
  }
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn