我发现视觉效果非常沉闷,并且倾向于导入免费的jquery插件来制作动画。但是,因为我比javascript更了解CSS,所以我非常喜欢纯CSS代码。
问题是,不使用jquery有一个主要优势吗?我是否真的通过消除jquery但加入50行CSS来加快加载时间?还是完全错了?我真的没有使用jquery的问题,但我发现自己正在寻找那些纯粹的CSS技术,因为少即是多。
我想从人们的经验中比较CSS和jquery。并且不要让我了解jquery如何比CSS可以做的更多,甚至不应该比较它们。我只谈论动画和视觉效果,就CSS而言,所以在css领域使用jquery。
最后一个问题,一种奖金问题,但我首先要问这个问题。有没有办法创建一个CSS滑块,无论有多少存在?换句话说,我可以为下一个事件设置一个时间,而不是为每个图像设置单独的时间吗?我使用php循环来填充从数据库中拉出图像路径的滑块,所以如果我自己或我的一个同事添加了太多图像,css滑块总是吓坏了,但jquery的处理它就好了。
我期待听到大家对此的看法。
答案 0 :(得分:3)
CSS和jQuery(视觉效果)都有优点和缺点。
<script src="//code.jquery.com/jquery-1.10.2.min.js">
。很多开发人员也使用CDN,因此客户端很可能已经拥有该脚本的缓存版本并获得304 Not Modified
。我建议对于视觉效果,你总是首先寻求跨浏览器的IE8 + CSS解决方案,以提高速度。如果没有这样的解决方案,请使用jQuery,或者采用更简单的设计/功能。
还要记住,通过使用jQuery,您可以将执行速度与开发速度进行交换。你不一定会牺牲jQuery提供的任何视觉效果,因为它们仍然可以在原始JavaScript中使用。但是你需要重新实现它们,所以你也可以使用经过充分测试和记录良好的库。
答案 1 :(得分:2)
transition: opacity 1s ease-in-out; // Work time
-webkit-transition: opacity 1s ease-in-out; // less time spent with family
-moz-transition: opacity 1s ease-in-out; // less time spent with family
-ms-transition: opacity 1s ease-in-out; // less time spent with family
-o-transition: opacity 1s ease-in-out; // less time spent with family
VS
var fadeTime = 1000; // and all the time in the world
当你能够用原生风格f.e:
.el:click{
animate: left calc(counter * .el<@width) 0.3s "ease-in-out";
/* where "<" is for parent :) */
}
......分开,
requestAnimationFrame
让你告诉浏览器在最合适时执行重绘,节省电池,它是在标签不活动时暂停,它由浏览器处理(类似于CSS过渡/动画),浏览器可以对其进行优化,使动画快速且流畅![/ li>
kb
库,但为什么不这样。永远不要忘记跟上 CSS 这真是太棒了,关于它的好处还有待发展。
答案 2 :(得分:0)
我发现JQuery更适合控制和响应用户操作,操纵框模型中的属性,以及基于CSS轻松访问页面上的组件。这有点强了。 JQuery中的动画功能也相当不错,不过它们中的大多数都只是类似CSS的预设。
如果您正在寻找一种有趣的方式来制作动画而不使用太多JQuery,并且您喜欢CSS,那么您应该在https://daneden.me/animate/
查看animate.css