在前端工作中,我们常常会用到各种的插件及框架,整理一些插件和工具,方便日后查找和使用。
我常用到的一些前端开源插件,这里只是罗列出来,详细的用法各个插件官网或者Gayhub都有介绍。
- bootstrap (前端快速开发UI框架)
- 官网:https://v3.bootcss.com/
- zepto (一个轻量级的javascript库)
- 官网:https://zeptojs.com/
- iscroll (区域滚动js插件,如上拉刷新,下拉加载等)
- 使用: https://iiunknown.gitbooks.io/iscroll-5-api-cn/content/gettingstart.html
- fastclick (解决移动端点击300ms延迟和点击穿透等问题的一款工具)
- 使用:
- 使用:
- swiper (网页触摸内容滑动js插件,如轮播图等)
- 官网: https://www.swiper.com.cn/
- better-scroll (区域滚动的插件,借鉴于iscroll,比iscroll更轻量,专注于移动端)
- jQuery (最全最简单最通用的 幻灯片轮播 ,可控制的插件,pc端和移动端都可完美使用)
其他的一些分类:
弹出框
- layer:http://layer.layui.com/
独立维护的三大组件之一(layDate、layer、layim)
- dialogBox:http://www.jq22.com/jquery-in...
基于jQuery的弹出框
- Bootbox.js:http://bootboxjs.com/
基于Bootstrap的弹出框
- SweetAlert:https://sweetalert.js.org/
一个效果非常好的弹层,支持图片、支持输入
轮播图
- Swiper:https://www.swiper.com.cn/
开源、免费、强大的触摸滑动插件,常用于移动端。
- iSlider:http://eux.baidu.com/iSlider/...
iSlider是一个表现出众,无任何插件依赖的手机平台javascript滑动组件。它能够处理任何元素,例如图片或者DOM元素
- WebSlides:https://webslides.tv/#slide=1
用HTML来实现网页版的PPT和宣传展示页。
- Owl Carousel 2:http://owlcarousel2.github.io...
基于jQuery的轮播
- slick:http://kenwheeler.github.io/s...
jQuery旋转木马插件slick
- jQuery slider:http://www.jq22.com/jquery-in...
插件描述:最全最简单最通用的 幻灯片轮播 ,可控制的插件,pc端和移动端都可完美使用
实时刷新
- Browsersync:https://www.browsersync.io/
Browsersync能让浏览器实时、快速响应您的文件更改(html、js、css、sass、less等)并自动刷新页面。
页面调试
- AlloyLever:https://github.com/AlloyTeam/...
腾讯开发维护的代码调试发布,错误监控上报,用户问题定位。可以通过url参数远程调试客户端定位问题。
- vConsole:https://github.com/Tencent/vC...
同样是由腾讯开发维护的代码调试工具,是针对移动端的调试工具。与上一个不同的是,不能通过添加url参数远程调试客户端。
函数库
- Lodash:https://github.com/lodash/lodash
是一个一致性、模块化、高性能的 JavaScript 实用工具库。很多方法lodash已经帮你写好了,直接调用就行,不用自己费尽心思去写了。
- Underscore:https://underscorejs.org/
Underscore提供了一套完善的函数式编程的接口,让我们更方便地在JavaScript中实现函数式编程。
- Ramda:https://github.com/ramda/ramda
与前两者类似,但不同的是参数位置不一样,Ramda的理念是function first,data last
。Ramda 还有一个特点:所有方法都支持柯里化。
可以通过阮一峰的文章Ramda 函数库参考教程学习。
- outils:https://github.com/proYang/ou...
前端业务代码工具库。统一封装常用函数,并发布到npm,以提高开发效率。
手势库
- AlloyFinger:https://github.com/AlloyTeam/...
针对多点触控设备编程的Web手势组件,快速帮助你的web程序增加手势支持,也不用再担心click 300ms的延迟了。拥有两个版本,无依赖的独立版和react版本。除了Dom对象,也可监听Canvas内元素的手势。
二维码
- jQuery qrcode:https://github.com/jeromeetie...
是一个能够在客户端生成矩阵二维码的jQuery插件,使用它可以很方便的在页面上生成二维码。
模版引擎
- doT:https://github.com/olado/doT
doT模板方便快捷的组织页面DOM,特点是快,小,无依赖其他插件。这也是我在项目中经常会使用的一个模版引擎。
- handlebars:http://handlebarsjs.com/
Handlebars 是 JavaScript 一个语义模板库,通过对view和data的分离来快速构建Web模板。它采用"Logic-less template"(无逻辑模版)的思路,在加载时被预编译,而不是到了客户端执行到代码时再去编译, 这样可以保证模板加载和运行的速度。
中文版本教程可以参考这篇文章Handlebars.js 模板引擎。
- Template7:http://idangero.us/template7/
针对移动端模板引擎,语法很类似Handlebars。它是Framework7 内置模版引擎。另外据官网说,它比Handlebars在移动端Safari中快2-3倍。
入门文章可以看
template7入门教程及对它的一些看法。
- Jade Language:http://jade-lang.com/
Node模版引擎,是Express框架内置的模版引擎。中文版的教程可以看这篇Jade模板。
另外可以参考Jade Syntax Documentation,这里整理了Jade模版引擎的使用方法,并且可以实时更新。
颜色选择器
- Bootstrap Colorpicker:https://farbelous.io/bootstra...
Bootstrap 4 中使用的颜色选择器。
- spectrum:http://bgrins.github.io/spect...
支持移动端的,超小的颜色选择器。不用大量的图片、也不需要其他插件,同时支持自定义。
动画库
- Animate.css:https://daneden.github.io/ani...
css3动画库,也是目前通用的动画库。只需要引入css,添加css样式即可实现动画。
- Anime.js:http://animejs.com/
Anime (/ˈæn.ə.meɪ/)是一个轻量级JavaScript动画库。
- Hover.css:http://ianlunn.github.io/Hover/
CSS3 hover 悬停效果,可以应用于链接、按钮、图片、SVG等等。
- WOW.js:http://mynameismatthieu.com/W...
滚动展示动画,WOW.js 依赖 animate.css,所以它支持 animate.css 多达 60 多种的动画效果。
另外从官网上下载使用的时候,要注意授权许可。不同的授权许可,价钱可是不一样滴哦。
- Magic.css:https://github.com/miniMAC/magic
css3 animation动画库。
- Waves:http://fian.my.id/Waves/
点击波纹效果,是一个基于 Google's Material Design 的点击效果。
- move.js:http://visionmedia.github.io/...
一个小型的JavaScript库,通过JS来控制一系列的CSS动画顺序执行,使CSS3动画变得非常简单和优雅。
图片上传
- Fine Uploader:https://github.com/FineUpload...
一个超简单的JS文件上传库。
- webuploader:http://fex.baidu.com/webuploa...
由百度开发的以HTML5为主,以FLASH为辅的文件上传组件。兼容IE6+,iOS 6+, android 4+。
正则表达式
- regexper:https://regexper.com/
用图形的方式表示正则表达式。
图片无损压缩
- tinypng:https://tinypng.com/
图片无损压缩,支持PS软件插件直接压缩,另外提供http、ruby、php、node.js、pyhont、java、.net多种方式API。
提供在线压缩。如果是多张图片压缩需要付费~
- 图好快:https://www.tuhaokuai.com/
一款国内的在线图片压缩。同样大量图片文件压缩需要付费。
数据Mock
- Mock.js:http://mockjs.com/
是一款前端开发中拦截Ajax请求再生成随机数据响应的工具.可以用来模拟服务器响应. 优点是非常简单方便, 无侵入性, 基本覆盖常用的接口数据类型。
官网上没有直接给ajax的请求拦截例子,可以参考这篇
Mock.js使用
- Easy Mock:https://easy-mock.com
是一个可视化,并且能快速生成模拟数据的服务,是一个Mock平台,由大搜车维护。Easy Mock也是基于Mock.js,不同的是不用在本地存储文件,直接远程访问接口。接口完成后只需要改变url地址即可。
简单了解Easy Mock使用方法,可以参考如何使用Easy Mock,直接看文章中给出的视频连接即可。
- JSON Server:https://github.com/typicode/j...
基于node服务,可以生成 REST API ,非常的方便。
视频播放器
- chimee:http://chimee.org/
Chimee(读“奇米”, [tʃɪ'mɪ:])是由奇舞团开源的一套 H5 视频播放器解决方案。
支持 MP4、M3U8、FLV 等多种媒体格式,同时它也帮我们解决了大部分的兼容性、差异化问题,包括全屏、自动播放、内联播放、直播解码等常见媒体播放需求。
- flv.js:https://github.com/Bilibili/f...
Bilibili开源纯JavaScript编写的FLV播放器。
- Video.js:https://videojs.com/
开源、免费的HTML5和Flash视频播放器
- jPlayer:http://www.jplayer.org/
jQuery的HTML5 音频和视频播放器。另外目前已经添加了React 版本的jPlayer。
滚动库
-
iScroll:https://github.com/cubiq/iscroll
iScroll是一个高性能、小体积、零依赖、跨平台的js滚动库。它支持PC端、移动端甚至smart TV。
另外支持了多个不同的js版本,可以根据需求选择使用。 -
beter-scroll:https://github.com/ustbhuangy...
一款重点解决移动端(已支持 PC)各种滚动场景需求的插件。它的核心是借鉴的 iscroll 的实现并对其进行了优化。
另外beter-scroll用vue进行了重写,更适合进行移动端的开发。 -
mescroll:https://github.com/mescroll/m...
精致的下拉刷新和上拉加载 js框架.支持vue,完美运行于移动端和主流PC浏览器。
解决方案会有多个插件,需要读者根据自己的实际业务需求进行甄别选用,欢迎留言交流和补充。