Javascript 滚动事件时背景样式不更新。(非jQuery) var nav=document.getElementsByTagName('nav')[0]; window.onscroll=函数(){ var supportPageOffset=window.pageXOffset!==未定义, isCSS1Compat=((document.compatMode | |'')=='CSS1Compat'), top=supportPageOffset?window.pageYOffset:isCSS1Compat?document.documentElement.scrollTop:document.body.scrollTop, 计算=数学绝对值(1-(顶部+200)/200); 如果(计算

Javascript 滚动事件时背景样式不更新。(非jQuery) var nav=document.getElementsByTagName('nav')[0]; window.onscroll=函数(){ var supportPageOffset=window.pageXOffset!==未定义, isCSS1Compat=((document.compatMode | |'')=='CSS1Compat'), top=supportPageOffset?window.pageYOffset:isCSS1Compat?document.documentElement.scrollTop:document.body.scrollTop, 计算=数学绝对值(1-(顶部+200)/200); 如果(计算,javascript,Javascript,您的样式中有剩余0. 试试这个:rgba(0,0,0,“+calc+”)你的风格中有多余的0。 尝试以下操作:rgba(0,0,0,“+calc+”)您的calc已具有前导的0。请将您的代码更改为: var nav = document.getElementsByTagName('nav')[0]; window.onscroll = function(){ var supportPageOffset = window.pageXOffset !== undefined,

您的样式中有剩余0.


试试这个:
rgba(0,0,0,“+calc+”)
你的风格中有多余的0。


尝试以下操作:
rgba(0,0,0,“+calc+”)

您的calc已具有前导的0。请将您的代码更改为:

var nav = document.getElementsByTagName('nav')[0];

window.onscroll = function(){
    var supportPageOffset = window.pageXOffset !== undefined,
        isCSS1Compat = ((document.compatMode || '') === 'CSS1Compat'),
        top = supportPageOffset ? window.pageYOffset : isCSS1Compat ? document.documentElement.scrollTop : document.body.scrollTop,
        calc = Math.abs(1 - (top + 200) / 200);

    if(calc <= '1'){
        nav.style.background = 'rgba(0,0,0,0.'+calc+')';

        console.log('rgba(0,0,0,0.'+calc+')');
    }
}

如果(calc您的calc已具有前导0。请将您的代码更改为:

var nav = document.getElementsByTagName('nav')[0];

window.onscroll = function(){
    var supportPageOffset = window.pageXOffset !== undefined,
        isCSS1Compat = ((document.compatMode || '') === 'CSS1Compat'),
        top = supportPageOffset ? window.pageYOffset : isCSS1Compat ? document.documentElement.scrollTop : document.body.scrollTop,
        calc = Math.abs(1 - (top + 200) / 200);

    if(calc <= '1'){
        nav.style.background = 'rgba(0,0,0,0.'+calc+')';

        console.log('rgba(0,0,0,0.'+calc+')');
    }
}

if(calc)像charm mate一样工作。非常感谢。我会在10分钟内接受你的答案。我不知道为什么stackoverflow需要我等10分钟。像charm mate一样工作。非常感谢。我会在10分钟内接受你的答案。我不知道stackoverflow为什么需要我等10分钟。