重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
jQuery监听鼠标滚轮(滚动)事件
创新互联建站始终坚持【策划先行,效果至上】的经营理念,通过多达十年累计超上千家客户的网站建设总结了一套系统有效的全网推广解决方案,现已广泛运用于各行各业的客户,其中包括:石雕等企业,备受客户好评。
第一步:下载jquery-mousewheel插件
第二步:复制以下代码做测试,打开日志看效果
jQuery(function($) {
$('#nav')
.bind('mousewheel', function(event, delta) {
var dir = delta 0 ? 'Up' : 'Down';
if (dir == 'Up') {
console.log(“向上滚动, ”);
} else {
console.log(“向下滚动, http: //blog.csdn.net/u011627980”);
}
return false;
});
});
}
!DOCTYPE html
html lange="en"
head
title点击左右按钮图片横向滚动/title
meta charset=utf-8" /
style type="text/css"
* { margin:0; padding:0;}
body { font-size:12px;}
.box {height:66px; float:left; width:440px; overflow: hidden; position:relative; }
.box
li { display:block; float:left; margin-left:5px; margin-right:5px;
width:100px;
height:70px;background:#BBB;font-size:50px;color:#ccc;line-height:66px;text-decoration:none;text-align:center;
cursor:pointer;}
.box li:hover { color:#999; }
.box li.active { background-position:-174px 0; color:#555;cursor:default;}
a.prev,
a.next {background:url()
no-repeat 0 0; display:block;width:23px;height:43px; float:left;
margin:15px 0 0 0; cursor:pointer;}
a.next { background-image:url()}
.scroll_list{ width:10000em; position:absolute; }
/style
!-- 引入jQuery --
script src="" type="text/javascript"/script
script type="text/javascript"
$(function(){
var page= 1;
var i = 4;//每版四个图片
//向右滚动
$(".next").click(function(){ //点击事件
var v_wrap = $(this).parents(".scroll"); // 根据当前点击的元素获取到父元素
var v_show = v_wrap.find(".scroll_list"); //找到视频展示的区域
var v_cont = v_wrap.find(".box"); //找到视频展示区域的外围区域
var v_width = v_cont.width();
var len = v_show.find("li").length; //我的视频图片个数
var page_count = Math.ceil(len/i); //只要不是整数,就往大的方向取最小的整数
if(!v_show.is(":animated")){
if(page == page_count){
v_show.animate({left:'0px'},"slow");
page =1;
}else{
v_show.animate({left:'-='+v_width},"slow");
page++;
}
}
});
//向左滚动
$(".prev").click(function(){ //点击事件
var v_wrap = $(this).parents(".scroll"); // 根据当前点击的元素获取到父元素
var v_show = v_wrap.find(".scroll_list"); //找到视频展示的区域
var v_cont = v_wrap.find(".box"); //找到视频展示区域的外围区域
var v_width = v_cont.width();
var len = v_show.find("li").length; //我的视频图片个数
var page_count = Math.ceil(len/i); //只要不是整数,就往大的方向取最小的整数
if(!v_show.is(":animated")){
if(page == 1){
v_show.animate({left:'-='+ v_width*(page_count-1)},"slow");
page =page_count;
}else{
v_show.animate({left:'+='+ v_width},"slow");
page--;
}
}
});
});
/script
/head
body
!-- 例子 --
div class="scroll" style="margin:0 auto;width:550px;"
!-- "prev page" link --
a class="prev" href="#"/a
div class="box"
div class="scroll_list"
ul
li1/li
li2/li
li3/li
li4/li
li5/li
li6/li
li7/li
li8/li
li9/li
li10/li
li11/li
li12/li
li13/li
li14/li
li15/li
li16/li
/ul
/div
/div
!-- "next page" link --
a class="next" href="#"/a
/div
/body
/html
手机端页面切换,页面跟随手势上下/左右滑动,依赖zepto.js。如果工程中同时使用jquery的话,采用如下方式来调用zepto的方法。
(function($){$('#Marke').touchSlider({direction: 'v',itemSelector:'.slide',slidePercent:0.2});
})(Zepto)。
调用方式:$('#Marke').touchSlider({direction: 'v',itemSelector:'.slide',slidePercent:0.2})
direction:v/h,竖滑或横滑。
itemSelector:需要滑动的一组DOM元素,使用同一的className来标识。
slidePercent:用户滑动多少百分比(0.0~1.0)后才会触发slider,否则就还原到滑动前的位置。
扩展资料:
zepto的使用:
1,针对移动端程序,Zepto有一些基本的触摸事件可以用来做触摸屏交互。
2,DOM操作:,添加id时Zepto会生效。
3,事件触发:使用zepto时load事件的处理函数会执行。
4,事件委托:zepto中,选择器上所有的委托事件都依次放入到一个队列中。
5,width() 与 height():zepto由盒模型(box-sizing)决定,用.width()返回赋值的width,用.css('width')返回border等的结果。
使用touchSwipe插件吧
但是与jquery的左滑动,右滑动有点冲突
建议所有的滑动,都用toucheSwipe插件去做