Javascript 了解Mootools资产

Javascript 了解Mootools资产,javascript,mootools,Javascript,Mootools,我有一个关于Mootools资产的问题。我的目标是以友好的方式加载javascript,加载后我想使用加载脚本中描述的新函数,并在该脚本中设置一些称为加载的全局变量 这是我的测试html,但我不明白为什么它不起作用。。A是未定义的…我只是在IE中测试到目前为止 谢谢 <html> <head></head> <body> <script src='mootoolscore.js'></script> <script

我有一个关于Mootools资产的问题。我的目标是以友好的方式加载javascript,加载后我想使用加载脚本中描述的新函数,并在该脚本中设置一些称为加载的全局变量

这是我的测试html,但我不明白为什么它不起作用。。A是未定义的…我只是在IE中测试到目前为止

谢谢

<html>
<head></head>
<body>
 <script src='mootoolscore.js'></script>
 <script src='mootoolsmore.js'></script>
 <script>
  var a;
  var f = 'test.js';
  function seta()
    {
       a= 5;
    }
  function loadjs()
    {
     Asset.javascript(f, {id: 'myscr',
            onload:function() {
              seta();
              a = 8;
            }
     });
     alert(a);
    }
 </script>
 <div style='cursor:pointer' onclick='loadjs()'>clickme</div>
 </body>
</html>

var a;
var f='test.js';
函数seta()
{
a=5;
}
函数loadjs()
{
javascript(f,{id:'myscr',
onload:function(){
刚毛();
a=8;
}
});
警报(a);
}
点击我

当资产准备就绪时,
onload
功能将异步触发。因此,当您想在
警报(a)
行上显示
a
变量时,该值尚未设置


您需要在
onload
函数中移动
alert(a)
,以获得所需的结果。

这是否意味着我不能在Asset.onload函数中修改全局变量?可以,但代码是异步的。警报将在加载之前触发。