繁体   English   中英

为什么这个变量返回“未定义”

[英]why is this variable returning "undefined"

我不明白为什么全局变量isMob在尝试通过if语句设置后返回 undefined 。

我一直在讨论这个问题,似乎可以找到答案。

var isMob;
var mobMenClicked = false;
var scrnRefresh = false;

$('.mobileMen').click(launchMenu);  


function scaleSite()
{               
    scaleVideo();
    scaleMenu();        
}   



function scaleMenu()
{
    isMob=0;
    if($(window).width() < 1066)
    {

        isMob=0;

    }
    else
    {

        isMob=1;

    }
    //chrome .hide Function Fix
    $('.menuBar').css('display', 'inline-block');
    isMob=0;

}   

alert(isMob);'

我以为我是在适当的位置声明变量。 显然我不是。 其他人能看到错误吗? 我肯定不能。 oO

如果发布的代码是整个代码,那么您永远不会调用分配isMob()其值的函数。 您可以尝试在第一行中定义时将其设置为 0 或在alert(isMob);之前调用scaleSite()函数alert(isMob);

在你的代码中调用scaleSite()一些地方,所以它会在分配发生的地方调用你的函数的其余部分。

 $(document).ready(function() { var isMob; var mobMenClicked = false; var scrnRefresh = false; scaleSite(); $('.mobileMen').click(launchMenu); }); function scaleSite() { // scaleVideo(); scaleMenu(); } function scaleMenu() { isMob=0; if($(window).width() < 1066) { isMob=0; } else { isMob=1; } //chrome .hide Function Fix $('.menuBar').css('display', 'inline-block'); isMob=0; alert(isMob); }
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM