Javascript代码不起作用?告诉我为什么

Him*_*nsh 0 html javascript

我正在研究一个简单的JavaScript代码,我不知道它是什么工作.如果你搞清楚了,请告诉我.

<!DOCTYPE html>
<html>
<head>
<script>
function displayText(){
var xa = document.getElementById('abcd').innerHTML;
xa+= 'asdf';
}

displayText();  
</script>
</head>
<body>
<div id="abcd"></div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

Sir*_*rko 6

innerHTML返回元素当前内容的String,而不是指向它的指针.所以请改用:

function displayText(){
  document.getElementById('abcd').innerHTML += 'asdf';
}
Run Code Online (Sandbox Code Playgroud)

要么

function displayText(){
  var el = document.getElementById('abcd'); 

  var xa = el.innerHTML;
  xa += 'asdf';

  el.innerHTML = xa;
}
Run Code Online (Sandbox Code Playgroud)

此外,在实际创建您引用的元素之前,您无法调用该函数.因此,请在body标签的底部移动调用.

<!-- .... -->
<script>
  display();
</script>
</body>
Run Code Online (Sandbox Code Playgroud)