2013-02-28 67 views
0

新的JavaScript/HTML5,道歉,如果術語沒有任何意義如何將innerHTML元素的值傳遞給全局變量?

你如何設置一個全局變量具有相同的值(最好是int或double)從一個功能的innerHTML的元素,然後使用全局變量來控制另一個函數中的循環?

我試圖設置一個循環,每秒計數一次,只要innerHTML元素'avgSpeed'介於0和60之間。 有兩個函數,一個填充元素,第二個填充循環。我無法讓循​​環與我從第一個函數的元素中讀取的值一起工作。

在第一個功能,我填充元素「avgSpeed」:

document.getElementById("avgSpeed").innerHTML = (responseObj.average_speed!=undefined)?responseObj.average_speed: "Not available"; 

這工作得很好,如果我在HTML文件打印元素,頁面上會顯示我的avgSpeed(例如:30或40 ,不會顯示爲30.0或40.0)

我已經試過如下:var miles是我使用

miles=document.getElementById("avgSpeed").innerHTML; 
miles=parseInt(document.getElementById("avgSpeed").innerHTML); 
全局變量210

我只是不能將'avgSpeed'鏈接到全局變量來用作循環控制。 謝謝!

+2

循環在哪裏?變量定義在哪裏?你何時/如何訪問變量?由於這是一個範圍問題,發佈您的確切設置非常重要。 – 2013-02-28 14:58:40

+0

循環處於另一個函數中,與avgSpeed分開。 var miles定義在任何函數之外,所以是一個全局變量。 – user2119949 2013-02-28 15:00:28

+0

看看是否有任何提示您的解決方案在這裏: http://stackoverflow.com/questions/2291252/javascript-global-variables – anthony 2013-02-28 15:00:40

回答

0

是的,你可以在的innerHTML的值傳遞給一個全局變量... 示例代碼

`

<!DOCTYPE html> 
<html> 
<head> 
<script> 
function getValue() 
{ 
var x = parseInt(document.getElementById("myHeader").innerHTML); 
x=x+3; 
alert(x); 
} 
</script> 
</head> 
<body> 
<h1 id="myHeader" onclick="getValue()">123</h1> 
</body> 
</html>` 

我希望這會幫助你!

+0

是變種X全球這段代碼,即使它的功能的getValue內定義的? 我試過了: miles = parseInt(document.getElementById(「avgSpeed」)。innerHTML); 在函數外定義的英里數 – user2119949 2013-02-28 18:34:56

+0

嘿,爲什麼不把它連接到窗口對象?並參考這個http://stackoverflow.com/questions/6601222/problem-accessing-global-variable-in-javascript – 2013-02-28 21:29:46