我正在学习用html编写,但是有一个我无法理解的问题。
以下代码可在其他浏览器中使用,但不能在IE9中使用。我知道它与innerHTML
有关,但我不明白为此找到的答案。
<html> <head> <script type="text/javascript">
function hw_function1() {
var img11=document.createElement("a");
img11.innerHTML = "<html> <body> <a href='http://google.de'>Google</a> </body></html>";
document.body.appendChild( img11 );
}
</script>
<body>
<a href="#" onclick="javascript:hw_function1()";>Test</a>
</body> </html>
我应该在不更改结构的情况下进行哪些更改(如果可能,仅更改innerHTMl部分)?
最佳答案
由于创建的是a
元素,因此只需通过.href
属性将href分配给该元素。
您可以使用.innerHTML
设置其文本内容,这是一种便利,尽管它并不是真正的“纯”方法。
var img11=document.createElement("a");
img11.href='http://google.de';
img11.innerHTML = 'Google';
document.body.appendChild( img11 );
设置文本内容的另一种方法是这样的...
img11.appendChild(document.createTextNode("Google"));