需要帮助将内联脚本移动到外部文件

时间:2013-03-25 21:09:46

标签: javascript

我是JavaScript的新手,我有两个需要帮助的问题。

首先 - 我想采用内联脚本并将其放在自己的.js文件中,但我不确定我需要更改的语法 - 因为它放在它自己的文件后不起作用。我正在改变onClick btw上的图像,我有几个。我只是在我的例子中展示了一个。

我已经链接到我的新外部文件,所以这不是问题。

这就是我现在在外部文件中得到的内容 -

$(document).ready(function(){

    function changeImage() {

            if (document.getElementById("eventChecked").src == "file:///G:/design/folder/img/checkBox.gif") 
            {
                document.getElementById("eventChecked").src = "file:///G:/design/folder/img/checked.gif";
            }
            else 
            {
                document.getElementById("eventChecked").src = "file:///G:/design/folder/img/checkBox.gif";
            }
        }
});

我意识到我有两次函数调用,但不确定如何解决它。

第二个问题 - 如果我使用绝对网址,上面的src路径似乎只能工作,但是我正在本地工作,然后我会将它传递到一个开发团队,它将在本地工作,然后它会上线。那是3个diff绝对路径,src路径至少有3组更改。如何让它查找root或保持简单?

感谢您提供任何帮助。

1 个答案:

答案 0 :(得分:1)

简单的解决方法是调用函数:

    $(document).ready(function(){

        function changeImage() {

                 ...

            }

        // Call the function!
        changeImage();  // <---- Call the function!!

    });

但是,看起来changeImage函数是一个函数,所以你可以把它作为由ready调用的匿名函数的函数体。

修改

要简单地执行代码,请不要将其作为函数声明:

$(document).ready(function(){

    if (document.getElementById("eventChecked").src == "file:///G:/design/folder/img/checkBox.gif") 
    {
        document.getElementById("eventChecked").src = "file:///G:/design/folder/img/checked.gif";
    }
    else 
    {
        document.getElementById("eventChecked").src = "file:///G:/design/folder/img/checkBox.gif";
    }
});