Что такое JavaScript-эквивалент следующего кода jQuery?

Если проблема заключается в дополнительном времени компиляции и раздувании бинарного размера, полученном путем компиляции .h как части всех используемых им .cpp-модулей, во многих случаях то, что вы можете сделать, - это сделать класс шаблона опустившимся из не-шаблонного базовый класс для не зависящих от типа частей интерфейса, и что базовый класс может иметь свою реализацию в файле .cpp.

-3
задан Konica Agarwal 16 January 2019 в 13:55
поделиться

1 ответ

Вот простой пример, который показывает, как вы можете решить эту проблему с помощью vanilla JS и CSS, используя CSS-анимацию, которую можно включать и выключать с помощью JS.

var stage = document.querySelector('#stage');
var rot = document.querySelector('#rotating');

stage.addEventListener('click', function () {
 rot.classList.toggle('animated');
});
#stage {
  position: relative;
  height: 100px;
  background-color: #000;
}

#rotating {
  position: absolute;
  top: calc(50% - 25px);
  left: calc(50% - 25px);
  width: 50px;
  height: 50px;
  background-color: #c00;
  animation: rotate linear 6s;
  animation-iteration-count: infinite;
  animation-play-state: paused;
  transform-origin: 50% 50%;
}

#rotating.animated {
  animation-play-state: running;
}

@keyframes rotate {
  0% {
    transform:  rotate(0deg) ;
  }
  100% {
    transform:  rotate(359deg) ;
  }
}
<div id="stage">
  <div id="rotating"></div>
</div>

В зависимости от того, какие браузеры вы хотите / должны поддерживать, вам может понадобиться добавить префиксы поставщиков в Код CSS.

0
ответ дан David 16 January 2019 в 13:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: