Javascript:无法覆盖变量

时间:2018-04-14 17:32:45

标签: javascript variables wallpaper

为了好玩和学习,我最近开始研究自己的html canvas项目。现在我已经完成了,我只是想将它上传到Wallpaper Engine,用户可以将其设置为自己的动画壁纸。

为此我想给用户一些壁纸选项的可能性。

我已按照您可以找到here

的说明进行操作

现在我遇到了以下问题:选项的变量不会全局更改,只是在其父级内部。见代码:

var scale = 1,
    dotsize = 1,
    dotgap = 8,
    text = 'example',
    fontFamily = 'Arial',
    fontSize = 300,
    radius = 200;



window.wallpaperPropertyListener = {
  applyUserProperties: function(properties) {
    if (properties.text) {
      text = properties.text.value;
      alert(text)
    }
  }
};
alert(text)

从Wallpaper Engine获取内容后的第一个警报显示正确的文本(无论用户放在文本字段中)

但是,最后的警告会显示我上面设置的“示例”字符串。

我尝试了不同的方法,例如使用window.text或var text等,但无法弄明白。

1 个答案:

答案 0 :(得分:2)

wallpaperPropertyListener只是一个函数定义,在被调用之前不会执行。所以从javascript的角度来看,它只是看到你的函数定义没有执行,然后继续你的第二个警报。希望这有帮助