因为最近开发的项目涉及到移动设备上的 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/
时间: 2024-12-18 09:25:16