Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.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
Safari会产生”的;Can';“找不到变量”;错误,尽管它已在另一个Javascript页面中定义_Javascript_Safari - Fatal编程技术网

Safari会产生”的;Can';“找不到变量”;错误,尽管它已在另一个Javascript页面中定义

Safari会产生”的;Can';“找不到变量”;错误,尽管它已在另一个Javascript页面中定义,javascript,safari,Javascript,Safari,JavaScript脚本可以与Chrome和Firefox一起使用,但不能在Safari中使用。代码是: $(document).ready(function(){ $(window).load(function() { myVariable.start(); }); 这将产生: ReferenceError: can't find variable: myVariable 该变量在该页面中包含的另一个JavaScript页面中定义,但由于某些

JavaScript脚本可以与Chrome和Firefox一起使用,但不能在Safari中使用。代码是:

  $(document).ready(function(){
     $(window).load(function() {
        myVariable.start();
     });
这将产生:

  ReferenceError: can't find variable: myVariable  
该变量在该页面中包含的另一个JavaScript页面中定义,但由于某些原因,Safari在另一个页面中看不到该定义。Safari是否在不加载定义变量的页面的情况下执行此脚本

我怎样才能解决这个问题


感谢您的帮助

尽量避免设置全局变量。 可以尝试将变量分配到页面顶部的窗口对象:

window.myVariable = { start: function() {} };
然后,当您需要时:

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

不可能用这么少的上下文来判断,但是Safari和其他浏览器在外部脚本方面没有固有的范围差异<代码>myVaraible看起来像是拼写问题。请显示准确的代码。如何嵌入另一个JavaScript文件?