我有两个html文件。一个包含另一个iframe。 iframe在先前创建的元素上执行getElementById。这在Chrome / Safari中运行良好,但在Firefox / IE8中没有,我不明白为什么。
Firefox返回:null
Safari返回:[object HTMLDivElement]
的index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>untitled</title>
</head>
<body>
<iframe src="comment.html"></iframe>
</body>
</html>
comment.html
<div id="foobar"></div>
<script type="text/javascript">
alert(document.getElementById('foobar'));
</script>
答案 0 :(得分:4)
您的评论html文件格式不正确。尝试使用:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>untitled</title>
</head>
<body>
<div id="foobar"></div>
<script type="text/javascript">
alert(document.getElementById('foobar'));
</script>
</body>
</html>