DEMO
1
2
3
var eventUtil={
addHandler:function(element,type,handler){
if(element.addEventListener){
element.addEventListener(type,handler,false);
}else if(element.attachEvent){
element.attachEvent('on'+type,handler);
}else{
element['on'+type]=handler;
}
},
removeHandler:function(element,type,handler){
if(element.removeEventListener){
element.removeEventListener(type,handler,false);
}else if(element.detachEvent){
element.detachEvent('on'+type,handler);
}else{
element['on'+type]=null;
}
}
}
window.onload=function(){
var oDelta=document.getElementById('Delta');
var op=oDelta.getElementsByTagName("p");
var timer=null;
var num=0;
eventUtil.addHandler(oDelta,'mousewheel',fullpage);
function fullpage(){
var e=e||window.event;
var down=null;
if(e.wheelDelta){
down=e.wheelDelta;//IE,Chrome
}else{
down=-e.detail;//FF
}
counter(down);
}
function counter(count){
if(count>0){
//向上滚动
num--;
if(num<-2){
num=0;
}
op[0].style.marginTop=100*num+"vh";
}else{
//向下滚动
num++;
if(num>2){
num=0;
}
op[0].style.marginTop=-100*num+"vh";
}
}
}
我想做一个当我向下滑到第三个就转到第一个,但是在第一个的时候不可向上滑的效果需要怎么做?就是1-2-3-1-2-3 3-2-1-stop的效果?
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
向上滚动的时候,marginTop那里也应该是负值,所以将你的counter函数改成下面这样应该就是你想要的效果,不知道我理解得对不对
弄个内部的slide页面呗