2017-04-11 61 views
-1

有一个高度为4600px的页面,如果其他语句在滚动元素
顺利地向右或向左移动。但是,如果其他块非常大,我需要减少它。请帮助任何人如何我可以减少块代码如果其他

var withAp = document.querySelector('.withAp'); 

window.onscroll = function() { 

    var scrolled = window.pageYOffset || document.documentElement.scrollTop; 

    if (scrolled < 100) { 
    withAp.style.marginRight = '0'; 
    withAp.style.opacity = '0.1'; 
    } 
    if (scrolled > 100 ) { 
    withAp.style.marginRight = '30px'; 
    withAp.style.opacity = '0.2'; 
    } 
    if (scrolled > 200) { 
    withAp.style.marginRight = '50px'; 
    withAp.style.opacity = '0.2'; 
    } 
}; 
+0

这是一个更长的东西的片段?目前看起来并不“很大”。 – Phylogenesis

+0

@ Phylogenesis看我不能只是粘贴所有代码 – DuuudeXX8

+0

这也不是一个“如果其他块”,因为没有别的。如果'scrolled'大于200px,你会碰到问题,你会碰到这两个语句。 – nurdyguy

回答

0
var withAp = document.querySelector('.withAp'); 

window.onscroll = function() { 

var scrolled = window.pageYOffset || document.documentElement.scrollTop; 

    if (scrolled > 100 ) { 
    withAp.style.marginRight = '30px'; 
    withAp.style.opacity = '0.2'; 
    } else { 
     withAp.style.marginRight = '0'; 
     withAp.style.opacity = '0.1'; 
    } 
    if (scrolled > 200) { 
    withAp.style.marginRight = '50px'; 
    withAp.style.opacity = '0.2'; 
    } 
}; 

你可以做到这一点没有检查滚动小于100,因为如果它不大于它是否小于或等于以便能在其他块去。

+0

告诉我怎样才能做到这一点,而不检查滚动 – DuuudeXX8

+0

我没说你不需要检查sroll,我说'如果(滚动<100){}'你不需要这个条件,这个块的代码可以在'else { '看看我的代码在回答 – varto

+0

非常感谢 – DuuudeXX8