什么时候执行javascript代码?

时间:2010-12-28 19:26:24

标签: javascript jquery

假设我有这段代码:

 <head>
    <script type="text/javascript">
    func1();
    </script>

    <script type="text/javascript" src="jquery.js"></script>

    <script type="text/javascript">
    func2();
    </script>

    <script type="text/javascript" src="tabber.js"></script>
 </head>

只有在jquery.js完全加载后才会调用func2()吗?基本上我试图在一个页面中使用一些繁重的javascript代码制作进度条。所以我想知道已经加载了多少页面。现在我可以以已完全下载的js文件数量的形式显示这一进展。因此,如果仅在jquery完全加载后调用func2(),我可以使用该函数将进度条向上滑动一定的百分比。

2 个答案:

答案 0 :(得分:2)

这些都不会被调用,因为它们不在<script>标签中。

您可能需要加载所需的所有脚本,然后使用window.onload或jQuery的ready事件来触发您要调用的函数。

<head>
    <script type="text/javascript" src="jquery.js"></script>
    <script type="text/javascript" src="tabber.js"></script>
    <script type="text/javascript">
        $(document).ready(function() {
            func1();
            func2();
        });
    </script>
</head>

答案 1 :(得分:2)

页面中的JavaScripts将在页面加载到浏览器时立即执行。例外情况是它被告知触发一个事件(即:点击,页面加载后等)

如果您想确保仅在加载页面后运行代码,您可以使用:

<head>
<script type="text/javascript" 
  src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js">
</script>
<script>
  $(document).ready(function(){
    [code to run once page loaded here]
  }
</script>
</head>

注意:也可以将Javascript放在标签中。