2013-04-18 69 views
0

我有這樣的事情:Javascript - 如何更新元素內部html?

var stopwatch = function (item) { 
    window.setInterval(function() { 
       item.innerHtml = myInteger++; 
     }, 1000); 
} 

此代碼應該顯示myInteger,但它沒有更新的item值。爲什麼(item是一個帶有文字的div)?

+4

的屬性的名稱是'innerHTML'不'innerHtml'。假設'item'是一個DOM Element對象。 – undefined 2013-04-18 05:11:15

回答

6

可能有很多原因(我們需要看到更多的代碼的),但這裏是一個工作示例:(您可能

  • 調用stopwatch

    var myInteger = 1, 
    stopwatch = function (item) { 
        window.setInterval(function() { 
         item.innerHTML = myInteger++; 
        }, 1000); 
    } 
    stopwatch(document.querySelector('div')); 
    

    重要變化這樣做)

  • - innerHtml+innerHTML(案件事項)。設置innerHtml時不會出錯;它會設置這個屬性,你不會注意到任何東西。
  • 初始化myInteger

http://jsfiddle.net/Q4krM/

+0

我有和你一樣的代碼,但它仍然不適用於我...我討厭javascript與我的身體的每一寸.. – ojek 2013-04-18 05:20:16

+0

@ojek你可以在jsfiddle.net上創建一個例子嗎? – 2013-04-18 05:20:38

+0

http://jsfiddle.net/Q4krM/2/ – ojek 2013-04-18 05:30:25

0

試試這個代碼:

var stopwatch = setInterval(function (item) { 
    item.innerHtml = myInteger++; 
}, 1000); 

這應該工作