Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/80.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文件不会';有些功能不起作用_Javascript_Html - Fatal编程技术网

在文件末尾包含javascript文件不会';有些功能不起作用

在文件末尾包含javascript文件不会';有些功能不起作用,javascript,html,Javascript,Html,在我的文件中,有许多dom元素和一个外部javascript文件,该文件具有一些管理事件的功能。问题是,当我在主文件末尾包含functions.js文件时: <script src="functions.js"></script> 最好放在什么地方?提前准备好 编辑: 在我的html文件(主文件)中,我执行了以下操作: <script> window.onload = function(

在我的文件中,有许多dom元素和一个外部javascript文件,该文件具有一些管理事件的功能。问题是,当我在主文件末尾包含
functions.js
文件时:

            <script src="functions.js"></script>
最好放在什么地方?提前准备好

编辑:

在我的html文件(主文件)中,我执行了以下操作:

        <script>
                window.onload = function(){

        // start calling your function eg. functions.j();
        myFunction();

   };

     </script>

window.onload=函数(){
//开始调用您的函数,例如functions.j();
myFunction();
};

仍然会遇到同样的问题。

您可以将
JavaScript
文件放在页面的任何位置。但您应该使用
window.onload
方法开始执行代码

<script>

  window.onload = function(){

        // start calling your function eg. functions.j();
   };

</script>

window.onload=函数(){
//开始调用您的函数,例如functions.j();
};

如果在加载函数之前调用该函数,它不知道该做什么。有两种解决方案:

  • 使用window.onload选项(或jquery$(document).ready(function(){…})
  • 加载脚本后进行函数调用

  • 文件中的某些代码可能试图调用OfMyFunction中的一个。javascript引擎按照它在页面上出现的顺序执行js。所以?这很混乱,我不知道在哪里包含该文件:顶部和结尾都不能解决它。问题的出现是因为在构建文档时,任何调用这些函数的标记都是实际的在加载函数之前只需调用标记,因为它位于文档的底部。使用document.onload()可避免此问题,因为document.onload()是在加载文档之后调用的。一种简单的方法是创建一个名为onDocLoad()的函数并将所有其他函数调用放在其中,然后使用document.onload(onDocLoad())或者类似的。您好,谢谢您的回复,假设我在
    函数中有两个函数。j
    函数1
    函数2
    。会是什么样子?@Malloc您可以显示您的代码吗?window.onload将确保在开始执行之前加载所有必需的资源。如果我这样做,函数将被执行不只是加载。你说的函数加载是什么意思?你可以从任何地方加载js文件。但是你应该在window.onload之后开始执行。在我的主文件中,我应该这样做:
    window.onload=function(){function1();function2();};
    <script>
    
      window.onload = function(){
    
            // start calling your function eg. functions.j();
       };
    
    </script>