繁体   English   中英

如何禁用自定义动画的点击,成角度?

[英]How to disable custom animations from click, angular?

我的Cordova应用程序使用Ionic + Angular(仍然是1.2.25)

我将自定义动画存储在一个CSS文件中:

<link rel="stylesheet" href="css/animations.css">

该文件约有20个班级

在我的应用程序中,我有“设置”字段“启用/禁用动画”。

如何以编程方式禁用animations.css加载?

作为一种替代方法,我想为所有动画类添加一些根类作为前缀(例如说.animate-flag ):

  .wm-opacity-low-add, .wm-opacity-low-remove {
    -webkit-transition: 0.5s linear all;
   transition: 0.5s linear all;
  }

  .wm-opacity-low,
  .wm-opacity-low-add.wm-opacity-low-add-active {
   opacity: 0.4;
  }

  .wm-opacity-low-remove.wm-opacity-low-remove-active {
    opacity: 1;
  }

将会是:

  .animate-flag.wm-opacity-low-add, .animate-flag.wm-opacity-low-remove {
    -webkit-transition: 0.5s linear all;
   transition: 0.5s linear all;
  }

  .animate-flag.wm-opacity-low,
  .animate-flag.wm-opacity-low-add.wm-opacity-low-add-active {
   opacity: 0.4;
  }

  .animate-flag.wm-opacity-low-remove.wm-opacity-low-remove-active {
    opacity: 1;
  }

当用户将动画选项animate-flag false -从所有DOM中删除animate-flag类,但看起来有点混乱。

还有其他温柔的方法可以完成相同的工作吗?

谢谢,

将所有动画存储在一个CSS文件中,您可以尝试像这样“禁用”它:

<head>
  <link id="animations-css" rel="stylesheet" href="animations.css">
</head>
<body>
  <button id="remove-css">Remove CSS</button>
  <button id="add-css">Add CSS</button>
  <script>
    document.getElementById('remove-css').addEventListener('click', function(){
      document.getElementById('animations-css').setAttribute('href', '');
    });

    document.getElementById('add-css').addEventListener('click', function(){
      document.getElementById('animations-css').setAttribute('href', 'animations.css');
    });

  </script>
</body>

这有点“脏乱”,但应该可以:)

http://plnkr.co/edit/Ut3jLplacMctrrYIO6LP

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM