Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
更改样式的简单Javascript不起作用_Javascript_Css - Fatal编程技术网

更改样式的简单Javascript不起作用

更改样式的简单Javascript不起作用,javascript,css,Javascript,Css,下面是一个小代码示例: var moving_nav = document.getElementById("moving_nav"); var logo = document.getElementById("logo"); setInterval(function(){ var scrolled = window.pageYOffset || document.documentElement.scrollTop; if ( scrolled >= 100) {

下面是一个小代码示例:

var moving_nav = document.getElementById("moving_nav");
var logo = document.getElementById("logo");

setInterval(function(){ 
    var scrolled = window.pageYOffset || document.documentElement.scrollTop;
    if ( scrolled >= 100) {
        moving_nav.style.position = "fixed";
        moving_nav.style.top = "0";
        logo.style.width:"60px";
        logo.style.height:"60px";
    } 
    else {
        moving_nav.style.position = "absolute";
        moving_nav.style.top = "100px";
        logo.style.width:"120px";
        logo.style.height:"120px";
    }
}, 10);
当你在我的菜单上滚动时,它会让我的菜单变得粘糊糊的。这非常好:)。但后来我想我的标志也改变。就这样,它停止工作了。(就在我加入了显示“logo”的行之后。)

浏览器控制台显示第9行(第一个“宽度”)中缺少“;”,但我不知道它到底属于哪里。我试图通过每次都使用getElementById而不是使用var来解决这个问题。不适合我。此外,我还试着注释了我设计标志的线条,其余的线条都很完美。我就是找不到问题:(请帮忙

PS:如果你认为这太容易了,也不要生我的气。我对JS是个新手。而且我不是以英语为母语的人,所以请原谅我(缺少)英语技能;)

谢谢,迪亚沃

    logo.style.width="60px";
    logo.style.height="60px";
而不是

    logo.style.width:"60px";
    logo.style.height:"60px";

另一个也是。

您使用了
而不是
=
。我们在css中使用

var moving_nav = document.getElementById("moving_nav");
    var logo = document.getElementById("logo");

    setInterval(function(){ 
        var scrolled = window.pageYOffset || document.documentElement.scrollTop;
        if ( scrolled >= 100) {
            moving_nav.style.position = "fixed";
            moving_nav.style.top = "0";
            logo.style.width="60px";
            logo.style.height="60px";
        } 
        else {
            moving_nav.style.position = "absolute";
            moving_nav.style.top = "100px";
            logo.style.width="120px";
            logo.style.height="120px";
        }
    }, 10);

对于任何样式属性,只有在使用js应用时才必须使用
=
。 使用css时,您必须使用:

if ( scrolled >= 100) {
    moving_nav.style.position = "fixed";
    moving_nav.style.top = "0";
    logo.style.width = "60px";
    logo.style.height = "60px";
} 
else {
    moving_nav.style.position = "absolute";
    moving_nav.style.top = "100px";
    logo.style.width = "120px";
    logo.style.height = "120px";
}

替换为
=

为什么在一种情况下使用
=
,而在另一种情况下使用
?你不认为操作是相似的,它们都应该有一种语法吗?谢谢:)我知道这很简单。有时候你就是看不到最明显的东西汉克斯:)我知道这很简单。有时候你就是看不到最明显的东西汉克斯:)我知道这很简单。有时候你就是看不到最明显的东西呜呜!那太尴尬了。谢谢你友好的回答:)你永远找不到最明显的东西:欢迎你@Diavo