将HTML格式的String转化为HTMLElement的实现方法

时间:2022-08-23 14:00:48

代码如下:

 
1
2
3
4
5
6
7
8
9
10
11
12
13
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<div id="content"></div>
<script>
var el = document.createElement("div");
el.innerHTML = ' <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>titleValue</title> <meta name="description" content="It is a good way to learn science." /> <meta name="keywords" content="Symfony2,Redis,PHP" /> <meta name="author" content="CSDN.NET" /> <meta name="Copyright" content="CSDN.NET" /> </head> <body> hello</body> </html>';
var descElements = el.getElementsByTagName("head");
document.getElementById("content").innerHTML = descElements.length;
</script>
</body>
</html>

1、若将script放到head元素中,则加载脚本时,尚未加载div元素,此时会出现“document.getElementById(...) 为空或者不是对象”。
2、以上代码在chrome中正常支行,输出结果为5,但在IE中输出结果为0.
3、注意在js中定义数据不需要使用[],否则会出错。