前言
前几天知乎上有一个问题:jQuery真的过时了吗?我的答案是:jQuery确实过时了!感觉这个话题挺有趣,那咱们展开了聊聊。详细地说一下jQuery为什么过时了。
一、jQuery解决了哪些痛点
讨论一个库或者框架是否过时,应该先看看它解决了哪些问题,这些问题现在是否有更好的解决方案。
jQuery解决了哪些问题呢?
浏览器兼容问题
IE678横行的年代,浏览器兼容问题是前端小伙伴们必须掌握的技能,IE6有哪些bug,这得倒背如流。IE不识别哪些标准的JavaScript方法和对象,这也得记住,写个ajax,别人都用XMLHttpRequest,到IE就得用ActiveXObject。苦逼的前端程序员不能专心研究技术,只能天天为浏览器厂商擦屁股。直到jQuery的出现,大家解脱了,DOM操作也好,事件绑定也好,ajax也好,jQuery为我们封装了兼容各个浏览器的方法,感觉整个世界都和平了。
选择器
没有jQuery,我们要用getElementById、getElementsByTagName这些方法获取DOM对象。为列表所有元素绑定事件,要么事件委托,要么遍历所有元素。为了搞定操蛋的DOM接口,我们掌握了各种奇淫技巧,其实毛用没有。有了jQuery,我们可以用css选择器获取元素,绑定事件也不在需要遍历元素列表了,整个人都清爽了。
动画效果
我清晰地记得第一次用计时器写