Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/423.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/74.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_Html - Fatal编程技术网

在Javascript中,为什么函数在其上面的行之前被调用?

在Javascript中,为什么函数在其上面的行之前被调用?,javascript,html,Javascript,Html,我对Javascript相当陌生,我似乎无法理解为什么它不能按我希望的方式工作。我正在使用一个叫做熊猫的HTML5JavaScript游戏引擎。我正在尝试暂停游戏,当我暂停游戏时,我想将PauseScreen设置为visible。暂停屏幕是游戏暂停时我试图显示的图像。game.system.pause();是作为发动机一部分的功能。我的问题是,为什么这不能按我希望的方式工作。我假设这是一个关于Javascript的问题,而不是关于panda的问题;对不起,如果我错了。这是Javascript异步

我对Javascript相当陌生,我似乎无法理解为什么它不能按我希望的方式工作。我正在使用一个叫做熊猫的HTML5JavaScript游戏引擎。我正在尝试暂停游戏,当我暂停游戏时,我想将PauseScreen设置为visible。暂停屏幕是游戏暂停时我试图显示的图像。game.system.pause();是作为发动机一部分的功能。我的问题是,为什么这不能按我希望的方式工作。我假设这是一个关于Javascript的问题,而不是关于panda的问题;对不起,如果我错了。这是Javascript异步特性的结果吗

pauseGameFunc = function (gmPsd){
    if (gmPsd === 0) {
        pauseScreen.visible = true;
        return game.system.pause();
    }
    else {
        pauseScreen.visible = false;
        return game.system.resume();
    }
}

你能给我的任何帮助都会很棒。对不起,我没有提供足够的细节。提前谢谢

pauseScreen.visible=true如果
pauseScreen
是图像元素,则不执行任何操作。如果您想隐藏它,它是:

pauseScreen.style.display = "none";
要再次显示:

pauseScreen.style.display = "";

另一个选项是
可见性
属性和值
“可见”
“隐藏”
。不同之处在于,使用
显示
,隐藏图像不会占用布局中的任何空间。使用
visibility
“隐藏”
,它仍然占据空间,只是不显示。

在pauseGameFunc之前使用var关键字,否则pauseGameFunc将是一个全局变量
pauseScreen.style.visibility='visible'
.style.display='inherit'我建议在body上切换一个类,并使用继承的CSS来实现这一点,而不是在代码中处理离散的dom元素。这使得在稍后暂停时开始显示其他内容变得很简单,或者使用类似于淡入淡出的动画,而不是只显示/隐藏。@dandavis:是的,在
body
上,或者至少在游戏容器上。bigtime.JavaScript没有“异步性质”。有些方法被设计为异步的,但语言本身及其基本操作(如变量赋值)是同步的。