2014-02-18 80 views
2

作爲標題說,爲什麼不在我的本地html文件上工作,儘管它在jsFiddle上工作。這是我的代碼:爲什麼我的代碼在jsFiddle上工作,但不是在本地

JS

var s,t,d; 
s = document.getElementById('start'); 
t = document.getElementById('temp'); 
d = document.getElementById('display'); 

startChange = function(){ 
    var v,nt,diff,timelapse,decrease,decreaseit,loop; 
    v = +d.value; 
    nt = +t.value; 
    diff = v-nt; 
    timelapse = 500; //set to whatever you like 
    decrease = .2; 
    decreaseit = function(){ 
    var v = d.value;  
    if(v>=(nt+decrease)){ 
    loop = setTimeout(function(){  
     d.value = (v-decrease).toFixed(1); 
     decreaseit(); 
    },timelapse) 
    } else clearInterval(loop); 
    } 
    decreaseit(); 

} 

s.onclick = startChange; 

HTML

<input id="display" type="text" value="7.2" disabled> 

<input id="temp" type="text"> 
    <button type="button" id="start">Set temp</button>  
+0

小心你的小提琴嗎? –

+0

你能告訴我們jsfiddle嗎? – enyce12

+0

http://jsfiddle.net/Rb3eW/ – user3091110

回答

2

你可能已經把你的代碼在你的文件的<head></head>部分,因爲你的JavaScript代碼無法訪問DOM元素DOM尚未創建。

如果你的代碼是在頭,用它包:

window.onload = function() { 
// your code 
} 

否則把它的結束標記之前。這是包含JavaScript的推薦方式,因爲必須首先加載基本內容。

相關問題