当前位置:Gxlcms > JavaScript > js控制keyframes

js控制keyframes

时间:2021-07-01 10:21:17 帮助过:207人阅读

本篇文章给大家分享的内容是关于js控制keyframes的代码,有需要的朋友可以参考一下


  1. createKeyFramesStyleSheetRules() { //创建一个单独的css文件存放动画 let style = null,
  2. sheet = null,
  3. token = null,
  4. dist = null,
  5. len = null,
  6. rules = null;
  7. len = this.loopSlideObjs.length-1; //计算移动到最后一张图片需要的距离
  8. dist = this.loopContainer.totalHeight - this.loopSlideObjs[len].height; // 创建css文件
  9. style = document.createElement('style');
  10. style.setAttribute('type', 'text/css'); document.head.appendChild(style); // 判断是否是webkit浏览器内核
  11. token = window.WebKitCSSKeyframesRule? '-webkit-':''; // 添加keyframes动画的样式
  12. rules = '@' + token + 'keyframes imagesLoopMove{from{transform: translate3d(0,0px,0);}to{transform: translate3d(0,-' + dist + 'px,0);}}';
  13. sheet = style.sheet;
  14. sheet.insertRule(rules, 0); // 给轮播图片添加动态的样式
  15. rules = '.loop-animate{animation: imagesLoopMove ' + 200 + 'ms linear 0ms infinite;}';
  16. sheet.insertRule(rules, 1); this.animateStyle = style; this.cssRule = sheet.cssRules[1]; this.animateTimeCurve(); console.group('function createKeyFramesStyleSheetRules'); console.log('dist:', dist); console.log('style:', style); console.log('sheet:', sheet); console.log('token:', token); console.log('cssRule:', this.cssRule); console.groupEnd('End');
  17. len = null;
  18. dist = null;
  19. style = null;
  20. sheet = null;
  21. token = null;
  22. rules = null;
  23. }


注意,如果它报DOMExpersion错误,那么就是你的cssRules书写错误,例如@keyframes缺少名字等等

  1. createKeyFramesStyleSheetRules() { //创建一个单独的css文件存放动画 let style = null,
  2. sheet = null,
  3. token = null,
  4. dist = null,
  5. len = null,
  6. rules = null;
  7. len = this.loopSlideObjs.length-1; //计算移动到最后一张图片需要的距离
  8. dist = this.loopContainer.totalHeight - this.loopSlideObjs[len].height; // 创建css文件
  9. style = document.createElement('style');
  10. style.setAttribute('type', 'text/css'); document.head.appendChild(style); // 判断是否是webkit浏览器内核
  11. token = window.WebKitCSSKeyframesRule? '-webkit-':''; // 添加keyframes动画的样式
  12. rules = '@' + token + 'keyframes imagesLoopMove{from{transform: translate3d(0,0px,0);}to{transform: translate3d(0,-' + dist + 'px,0);}}';
  13. sheet = style.sheet;
  14. sheet.insertRule(rules, 0); // 给轮播图片添加动态的样式
  15. rules = '.loop-animate{animation: imagesLoopMove ' + 200 + 'ms linear 0ms infinite;}';
  16. sheet.insertRule(rules, 1); this.animateStyle = style; this.cssRule = sheet.cssRules[1]; this.animateTimeCurve(); console.group('function createKeyFramesStyleSheetRules'); console.log('dist:', dist); console.log('style:', style); console.log('sheet:', sheet); console.log('token:', token); console.log('cssRule:', this.cssRule); console.groupEnd('End');
  17. len = null;
  18. dist = null;
  19. style = null;
  20. sheet = null;
  21. token = null;
  22. rules = null;
  23. }

注意,如果它报DOMExpersion错误,那么就是你的cssRules书写错误,例如@keyframes缺少名字等等

相关推荐:

关于keyframes的10篇文章推荐

以上就是js控制keyframes 的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行