我的JQuery向下滚动工作,但向上滚动不工作
My JQuery Scroll Down works but scroll up doesn't work at all
我在html中放入了几个div,其中一行的id以字母d开头,例如:#d1, #d2, #d3…然后我创建了下面的javascript代码:
var pos = 0;
$("#button-up").on('click', function(e) {
e.preventDefault();
if(pos > 1){
pos -= 1;
$("html, body").stop().animate({
'scrollTop': $("#d"+pos).offset().top-300},200,"swing");
};
});
$("#button-down").on('click', function(e) {
e.preventDefault();
if(pos < 10){
pos += 1;
$("html, body").stop().animate({
'scrollTop': $("#d"+pos).offset().top-300},200,"swing");
};
});
window.addEventListener("scroll", function(event) {
var posi = this.pageYOffset;
if(posi-(pos-1)*1070+50 >= 1070){pos += 1} else if((pos-1)*1070+50-posi <= -1070){pos -= 1};
});
最后我的网站滚动向下当我点击按钮向下,但我需要点击两次按钮向上滚动。为什么?还有比这更好的方法能得到预期的结果吗?
我让它工作改变这部分:
window.addEventListener("scroll", function(event) {
var posi = this.pageYOffset;
if(posi-(pos-1)*1070+50 >= 1070){pos += 1} else if((pos-1)*1070+50-posi <= -1070){pos -= 1};
});
和这个:
window.addEventListener("mousewheel", function(e) {
e.preventDefault();
console.log('passou por 6');
var evt = window.event || e //equalize event object
evt = evt.originalEvent ? evt.originalEvent : evt; //convert to originalEvent if possible
var delta = evt.detail ? evt.detail*(-40) : evt.wheelDelta //check for detail first, because it is used by Opera and FF
if(delta > 0) {
if(pos > 1){
console.log('passou por 3');
pos -= 1;
$("html, body").stop().animate({
'scrollTop': $("#d"+pos).offset().top-300},200,"swing");
};
//scroll up
console.log('cima');
}
else{
if(pos < 10){
pos += 1;
$("html, body").stop().animate({
'scrollTop': $("#d"+pos).offset().top-300},200,"swing");
};
console.log('baixo');
//scroll down
};
});
使用jquery的滚动函数
$(window).scroll(function(event){
// your code
});
相关文章:
- jQuery滚动功能只工作一次
- 可以'无法使滚动条正常工作
- 如何隐藏滚动条,但希望它继续工作
- "此网站似乎使用滚动链接定位效果.这可能不能很好地与异步平移一起工作;
- 更新Wordpress和我的平滑滚动停止工作
- 滚动功能不工作
- 如何停止两个按钮执行相同的工作?在这种情况下,它们都会滚动到顶部
- 单击水平滚动库中的图像以居中显示无法工作的功能
- 如何在HTML / CSS中填充垂直和滚动中间窗格(Chrome可以工作,但不能Firefox)
- 自动滚动工作方式不同
- jquery滚动功能无法正常工作
- 绑定'滚动'不会'我在IE 11中不工作
- Jquery焦点不工作/滚动
- 滚动功能不工作
- 锚定标签功能强大,但滚动流畅赢得't工作;页面的行为就像javascript是'没有
- 溢出:滚动;jquery在停止工作后一直滚动到某个时刻
- 滚动检测没有'调用新页面Javascript后无法工作
- 滚动功能按相反顺序工作
- Angular UI Grid重用的网格无法重置滚动+无限滚动无法工作
- JavaScript不能在PHP文件中工作(滚动时的框影)