我正在学习用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"));

09-16 10:14