2013-07-28 146 views
0

我一直在使用JavaScript過去幾天,並已決定使用它爲我的網站。我也決定使用外部函數在一個單一的js文件Javascript:外部函數將不起作用

function imageLoad() { 
    var path,domain,cut; 
    path = window.location.pathname; 
    domain = "WEBSITE DOMAIN ADDRESS"; 

    cut = path.substring(domain.length,path.length); 

    /* Still in progress */ 
} 

function pageStart() { 
    var image-on = 0; 
    var imgArray = new Array(); 

    alert("boo"); /* Used to check the script will run */ 
} 

現在,這是一個簡單的過程。沒有太複雜的。我已經完成了以下操作(它是我的模板的代碼提取)

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

<head> 
    <link rel="stylesheet" href="main.css" type="text/css" /> 
    <title>Grandpa Pixel</title> 
</head> 

<body onload="pageStart();"> 

現在應該這樣做。在身體裝載時,它應該引起警報「噓」。但事實並非如此。它只是正常加載頁面。但是,如果我使外部腳本只包含行警告(「噓」),它完美的作品。我可以問爲什麼這樣?這是否意味着每個外部文件只能有一個功能?

+6

語法錯誤'var image-on = 0;'? – elclanrs

+2

這將是學習[JavaScript錯誤控制檯](http://www.netmagazine.com/tutorials/javascript-debugging-beginners)如何工作的好時機。 – JJJ

+3

我不認爲頭部之前的腳本元素也是正確的。 –

回答

0

檢查:

function pageStart() { 
    var image_on = 0; 
    var imgArray = new Array(); 

    alert("boo"); /* Used to check the script will run */ 
} 

HTML

<head> 
    <link rel="stylesheet" href="main.css" type="text/css" /> 
    <title>Grandpa Pixel</title> 
<script type="text/javascript" src="main_script.js"></script> 
</head> 

<body onload="pageStart();"> 
0

使用螢火蟲或其他調試器推薦。

錯誤

SyntaxError: missing ; before statement 
var image-on = 0; 

main_script.js (line 12, col 13) 

ReferenceError: pageStart is not defined 

pageStart(); 

SOLUTION

變化

var image-on = 0; 

var imageOn = 0; 

這將是清潔劑把<腳本將10個標記放入<標頭>標記中。