Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.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 为什么移相器';s setText()会导致CSS警告;预期颜色,但找到';0'&引用;?_Javascript_Css_Text_Warnings_Phaser Framework - Fatal编程技术网

Javascript 为什么移相器';s setText()会导致CSS警告;预期颜色,但找到';0'&引用;?

Javascript 为什么移相器';s setText()会导致CSS警告;预期颜色,但找到';0'&引用;?,javascript,css,text,warnings,phaser-framework,Javascript,Css,Text,Warnings,Phaser Framework,标题解释了这一点。以下是创建我的文本对象的代码: statusBarHP.text = game.add.text(0, 0, '', { font:"16px Arial", fill:"#ffffff", stroke:"#000000", strokeThickness:2 }); 保存文本的对象的代码: statusBarHP = game.add.sprite(0, 0, 'status-bar-red'); 用于更改更新函数中的文本的代码: sta

标题解释了这一点。以下是创建我的文本对象的代码:

statusBarHP.text = game.add.text(0, 0, '', {
    font:"16px Arial",
    fill:"#ffffff",
    stroke:"#000000",
    strokeThickness:2
});
保存文本的对象的代码:

statusBarHP = game.add.sprite(0, 0, 'status-bar-red');
用于更改更新函数中的文本的代码:

statusBarHP.text.setText(Math.floor(player.health) + '/' + player.max_health);

每次使用setText()时都会发生这种情况。我尝试将填充和笔划设置为“rgb(255,255,255)”和“rgb(0,0,0)”,颜色是正确的,但我仍然得到警告…

所以简单的答案是,你不想做你正在做的事情

如果您想访问这些,可以尝试执行以下操作:

var statusBarHp = { graphic: '', text: '' };
然后设置
statusBarHp.graphic=game.add.sprite(…)
statusBarHp.text=game.add.text(…)

这可能有助于轻松访问它。但是,如果您想同时对
精灵
文本
对象使用

我可能还建议不要使用“text”作为对象的名称,因为这样一来,您会在
statusBarHp.text.text='newtext'
中遇到一个奇怪的问题。你未来的自我可能会因此而困惑,就像你的代码新手(我)一样

至于错误,我猜Phaser可能会感到困惑,因为您正在劫持标准的Sprite对象来添加文本对象。JS不太在意,它可能会起作用,但这是一个不好的做法,有更好的方法来处理这个问题

编辑:

在聊天和观看游戏运行后,我不得不在Firefox控制台中禁用并启用CSS选项卡。(我希望在标准控制台中抛出错误。)

据我所知,这些都是警告,而且似乎是Phaser框架向Firefox传递数据的问题。框架可能会在某个点将颜色值截断为“0”。看

我的建议是忽略这些。您还可以看到,如果有人对Phaser框架本身有更深入的了解(也许有关于Canvas/WebGL的知识,因为这两种类型的游戏都有这种情况),他是否可以解释Firefox为何会抛出此警告


如果您将Chrome current and Phaser 2.4.4中的
#000000
切换到
黑色
,或者甚至可能切换到
#010101

,您也可以看到会发生什么。您的设置/环境是什么?你在哪里看到这个CSS错误?我似乎也没有在Chrome中看到这个错误。我主要使用Firefox(43.0.4),我在那里得到了它。刚刚下载并安装了Firefox 44.0,我没有收到这个错误。您是否可以编辑您的问题以包括您创建的
statusBarHP
?出于测试目的,我使用
var statusBarHP={text:''}。还有Phaser 2.4.4,对吗?顺便说一下,这是一个不错的小游戏。除去我们遇到的小问题,它玩得很好,看起来不错。谢谢!这目前是一个学校项目,但我会把它做得更大。