将一些Javascript放在一个单独的文件中?

时间:2013-06-05 17:20:48

标签: javascript jquery html

我正在尝试在本地重新创建:http://jsfiddle.net/janpetras/wzBu8/ 当然,它不应该那么复杂,但我无法让它发挥作用。

这是代码:

$(function(){
    var moneyEarned,yearlySalary,secondSalary;
    $("#startEarning").click(function(){
        moneyEarned = 0;
        var hourlySalary = $("#hourlySalary").val();
        if(hourlySalary.length > 0) {
            secondSalary = hourlySalary / 3600;
        } else {
            yearlySalary = $("#yearlySalary").val(); 
            secondSalary = yearlySalary / 7200000;
        }

        setInterval(updateMoneyEarned, 1000);
    });


    function updateMoneyEarned() {
        moneyEarned += secondSalary;
        $("#moneyEarned").html(accounting.formatMoney(moneyEarned));
    }
});

我想将Javascript代码放入单独的“script.js”文件中。我创建了文件,在HTML中正确链接到它,我包含jQuery和accounting.js以及所有内容,它不起作用,而不是更新。

我尝试将代码直接放入HTML中,如果我这样做,它就能正常工作,所以问题就在于我制作script.js的方式。我只是复制/粘贴了那段代码,还有更多吗?我做错了什么?

2 个答案:

答案 0 :(得分:2)

请记住,你必须按顺序做事。如果之前没有包含jQuery,则不能包含此文件。

<html>
    <head>
        <title>...</title>
        <script type="text/javascript" src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
        <script type="text/javascript" src="path/to/your/script.js"></script>
    </head>
    <body>
        <!-- your content -->
    </body>
</html>

订购顺序正确后,您就可以执行脚本了。如果您的$(function(){ ... });来电不起作用,请尝试以这种方式使用:

$(document).ready(function() {
    // Your code here
});

看看它是否有效。

答案 1 :(得分:2)

在你的jsfiddle中我可以看到你在css部分中包含了accounting.js:

<script src="//cdn.jsdelivr.net/accounting.js/0.3.2/accounting.min.js"></script>

我把它移到了html部分,它开始工作了。

http://jsfiddle.net/GvAzM/1/