从头部调用正文中定义的函数

Call function defined in body from head

本文关键字:定义 函数 正文 头部 调用      更新时间:2023-09-26

我有一个简单的HTML页面:

<html>
    <head>
       <script>
       share();
       </script>
    </head>
    <body>
       <script>
          function share() {
                alert('test');
          }
       </script>
   </body>
</html>

我需要从<head>调用函数共享,并且函数本身必须在<body>中定义。

上面的代码导致了未定义的函数错误。

这只是一个解释问题的简化脚本,所以需要这样做。有办法绕过这个吗?

您需要等待主体加载,因此

<html>
<head>
   <script>
   window.onload=share;
   </script>
</head>
<body>
   <script>
      function share() {
            alert('test');
      }
   </script>

使用

     <html>
        <head>
<script src="jquery-1.11.1.min.js"></script>
           <script>
            $(document).ready(function() {
               share();
            });
           </script>
        </head>
        <body>
           <script>
              function share() {
                    alert('test');
              }
           </script>

您可以使用

    <html>
    <head>
       <script>
        windows.onload = function(){
           share();
        }
       </script>
    </head>
    <body>
       <script>
          function share() {
                alert('test');
          }
       </script>
</body>
</html>

或者您可以使用Jquery版本的

  <html>
        <head>
         <script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
           <script>
            $(document).ready(function() {
               share();
            });
           </script>
        </head>
        <body>
           <script>
              function share() {
                    alert('test');
              }
           </script>
    </body>
    </html>

他们两个都在这种情况下工作,但如果你想知道这两个之间的区别,我建议你看看
window.onload与$(document).ready()