Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/410.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 提高硬件加速css3动画的速度_Javascript_Animation_Css_Hardware Acceleration - Fatal编程技术网

Javascript 提高硬件加速css3动画的速度

Javascript 提高硬件加速css3动画的速度,javascript,animation,css,hardware-acceleration,Javascript,Animation,Css,Hardware Acceleration,我试图在使用硬件加速的css3动画期间动态增加动画持续时间。使用javascript和非硬件加速的css3,我只是增加了动画的持续时间,动画就会加速。现在我使用translate3d而不是left属性来设置动画,增加动画持续时间不起作用。我有一种感觉,一旦动画被卸载到GPU,对css的更改就不会影响它。当我做了一个改变时,我需要一些方法来强制更新GPU的动画 这是我的css @-webkit-keyframes gofast { from { -webkit-transform: tra

我试图在使用硬件加速的css3动画期间动态增加动画持续时间。使用javascript和非硬件加速的css3,我只是增加了动画的持续时间,动画就会加速。现在我使用translate3d而不是left属性来设置动画,增加动画持续时间不起作用。我有一种感觉,一旦动画被卸载到GPU,对css的更改就不会影响它。当我做了一个改变时,我需要一些方法来强制更新GPU的动画

这是我的css

@-webkit-keyframes gofast {
 from {
   -webkit-transform: translate3d(0,0,0);
 }
 to {
   -webkit-transform: translate3d(-10240px,0,0);
 }
}

.makeMeFast {
  position:absolute;
  top:0px;
  z-index:0;
  width:12288px;

  -webkit-animation-name: gofast;
  -webkit-animation-duration: 4s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
}
是否有一些已知的方法可以做到这一点,我是否遗漏了一些明显的东西,或者是不能做到

任何帮助都将不胜感激


谢谢

我认为这只是当前硬件加速实现的一个限制。动画启动后,禁用该选项即可


(民间智慧-据说给想要制作动画的块赋予非常大的尺寸(又名宽度:13000px)是个坏主意-这会让GPU创建巨大的对象)

嗯,我想你可能是对的。我已经尝试了几天了,在ipad上用HTML/CSS制作复杂的硬件加速动画似乎非常困难。我很高兴有人能证明我在这一点上是错的。