因为最近开发的项目涉及到移动设备上的 HTML5 开发,其中需要实现轮播效果。
然后最快捷的方式,你知道的(Bootstrap),然后原生的 Bootstrap 的 carousel.js 插件并没有支持手势。
然后......自己想办法呗,再然后,就有下面3种解决方案 :
- jQuery Mobile (http://jquerymobile.com/download/)
- $("#carousel-generic").swipeleft(function() {
- $(this).carousel('next');
- });
- $("#carousel-generic").swiperight(function() {
- $(this).carousel('prev');
- });
- TouchSwipe jQuery plugin (https://github.com/mattbryson/TouchSwipe-Jquery-Plugin)
- $("#carousel-generic").swipe({
- swipeLeft: function() { $(this).carousel('next'); },
- swipeRight: function() { $(this).carousel('prev'); },
- });
- hammer.js (http://eightmedia.github.io/hammer.js/) +
jquery.hammer.js (https://github.com/EightMedia/jquery.hammer.js)
- $('#carousel-generic').hammer().on('swipeleft', function(){
- $(this).carousel('next');
- });
- $('#carousel-generic').hammer().on('swiperight', function(){
- $(this).carousel('prev');
- });
单单为了支持滑动手势而导入整个 jQuery Mobile 貌似有些大材小用,
而 TouchSwipe 在两边可点击按钮区域滑动无效,
然后选择了 Hammer,
然后,<完>
(参考资料:http://lazcreative.com/blog/adding-swipe-support-to-bootstrap-carousel-3-0/)