移动端那些事;hammer不错的jq插件。

从pc端到移动端相信很多前端攻城师为移动端发愁,写原声的手机端事件是非常费力的, 而jq的click又有300毫秒延迟,现在有了比较不错的jq插件hammer,Hammer.js是一个开源的,轻量级的javascript库,它可以在不需要依赖其他东西的情况下识别触摸,鼠标事件支持各种手机事件,比如缩放 ,qq左滑动删除,  放大, 旋转等。

/*
可以写原声和jquery的,需要注意的是写原声的引入hammer.js  就可以, 而jquery的必须引入jquery2.0以上和jquery.hammer.js
*/ 

下面用一个tab切换来介绍hammer。

用法:

 

1,首先引入jq2.0以上版本和jquery.hammer.js.

2,获取元素,和jq一样,在后面加上hammer就可以了    var hammertime = $('.tabs a').hammer(); 

3,可以直接用on直接添加事件hammertime.on('tap', function(ev) {} 这样用了hammer中的tap点击事件。function里可以写自己的js。

 

hammer.dragstart = function(ev) { };// 开始拖动</span>
hammer.drag = function(ev) { }; // 拖动中</span>
hammer.dragend = function(ev) { }; // 拖动结束</span>
hammer.onswipe = function(ev) { }; // 滑动</span>
hammer.tap = function(ev) { }; // 单击</span>
hammer.doubletap = function(ev) { }; //双击</span>
hammer.hold = function(ev) { };// 长按</span>
hammer.release = function(ev) { }; // 手指离开屏幕</span>

 

体验链接:http://hammerjs.github.io/

js code

1 $(function() {
2   var hammertime = $('.tabs a').hammer();
3   hammertime.on('tap', function(ev) {
4     $(this).addClass('actives').siblings().removeClass('actives');//添加一个class  同辈级移除。
5     var index = $('.tabs a').index(this);  //索引
6     $('.tab-bott').eq(index).show().siblings().hide(); 
7   })
8 })

 推荐个前端群:群名称:html5/css3/js/jq/nodejs/div 群号:339840649  欢迎加入 一起交流。点击加入:html5/css3/js/jq/nodejs/div
闲人吧:闲人吧

 

posted @ 2015-07-02 20:02  peerless_she  阅读(1635)  评论(8编辑  收藏  举报