Safari生成“无法找到变量”错误,尽管它已在另一个Javascript页面中定义

时间:2010-10-31 23:01:02

标签: javascript safari

JavaScript脚本适用于Chrome和Firefox,但不适用于Safari。代码是:

  $(document).ready(function(){
     $(window).load(function() {
        myVariable.start();
     });

这会产生:

  ReferenceError: can't find variable: myVariable  

该变量在此页面中包含的另一个JavaScript页面中定义,但由于某种原因,Safari在其他页面中看不到该定义。 Safari是否在不加载定义变量的页面的情况下执行此脚本?

我该如何解决这个问题?

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

尽量避免设置全局变量。 也许尝试将您的变量分配给窗口对象,在页面顶部:

window.myVariable = { start: function() {} };

然后当你需要它时:

$(window).load(function() {
    window.myVariable.start();
 });