一个内部使用的javascript库:geekpark.js
jopen
11年前
1.概述
一个团队内部使用的javascrip库,主要着重减轻前端工作量,提高组件复用性。目前处于初级开发阶段。
2.安装
- 此插件依赖jQuery框架,请先引入jQuery
- 下载geekpark.min.js到项目文件夹
- 如果你需要使用gpalert等UI组件则还需要下载geekpark.min.css文件
3.使用方法
- 「Grunt支持」运行
grunt即可生成编译scss并生成压缩后的文件 - 将
geekpark.min.js引入你的项目后,即可通过GeekPark.xxx调用其中组件/函数。GeekPark是暴露在window下的全局变量 source map支持,如果你不想启用或者浏览器加载不上可在geekpark.css最底部删掉map引用
部分组件/函数列表
slideToDom(dom, offset, callback):平滑滚动到某个DOM。dom可为符合jQuery选择器的任何形式,eg:.title#titleh1.titleinput[type='test']offset距离DOM的偏移,即滑动后距离浏览器顶部的边距callback滑动完成后的回调函数
isRetinaDisplay()检测是否为Retina屏幕,返回布尔值(定义retina的界限为1.3dpi)-
whichTransitionEvent()检测某元素css动画知否执行完毕。某些浏览器原生也有检测完毕,该例子只是为了兼容性var transitionEvent = GeekPark.whichTransitionEvent(); $('xxx').one(transitionEvent, function(event) { // Do something when the transition ends }); alertTip()一个弹窗组件,用于美化浏览器自带alert(),兼容移动版- 参数说明:
alertTip(title, tip, type) title弹窗标题tip弹窗正文type(可选): error类型- 此例会使用到geekpark.css
- 参数说明:
share对象,拥有openWindow和run方法,用于打开微博和推ter的分享。- window.GeekPark.share.run(type, options)
- type ==> { weibo | 推ter }
- options ==> {title: 'title', imageView: 'img url'}
loadingBtn对象,目前拥有createNew方法- GeekPark.loadingBtn( jQueryObject, loadingGif图片地址 );
isWechat()通过UA检测是否在微信浏览器内打开页面,返回布尔值stringTrim()剔除string两边的空格- GeekPark.stringTrim('geekpark ') => 'geekpark'
arrayShuffle()打乱一个数组var arr = [1,2,3,4,5]; GeekPark.arrayShuffle(arr); // [2,1,4,5,3] // [3,1,4,2,4] // ...changeWechatShare()用于更改微信分享到朋友圈、发送给朋友的标题、描述以及缩略图shareData = { title: xxx, // 可选 desc: xxx, // 可选 link: xxx, // 可选 img_url: xxx // 必须 } GeekPark.changeWechatShare(shareData);- 如果你是
服务号并且还想增加在朋友圈中的来自xxx小尾巴,请看源码,在WeixinJSBridge.invoke('shareTimeline', {下的参数中增加`"appid" : 公众号原始ID"
- 如果你是