我正在编写一个演示页面,显示演示,人们可以获得演示的源代码
我使用这种方法来做到这一点:将html页面的源代码存储在JavaScript变量中,然后使用document.write显示页面。
但我遇到了IE的问题,这是我的代码:
<!DOCTYPE html public "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<script>
var html_code = '<!doctype html>\n\
<html>\n\
<head>\n\
<meta http-equiv="Content-Type" content="text/html; charset=uft-8">\n\
<title>test</title>\n\
<script type="text/javascript" src="http://wong2js.googlecode.com/svn/trunk/test.js"></s'+'cript>\n\
</head>\n\
\n\
<body>\n\
<div id="preview">\n\
I am a div\n\
</div>\n\
\n\
<script>\n\
alert(tmp);\n\
</s' + 'cript>\n\
</body>\n\
</html>';
function getHTMLCode(){
return html_code;
}
document.write(html_code);
</script>
</body>
</html>
在我链接到页面的JavaScript文件中(http://wong2js.googlecode.com/svn/trunk/test.js),代码是:
alert("Hello");
tmp = "IEEEE";
正如你所看到的,我宣布了一个全局变量tmp
,但当我尝试提醒它时,IE(6,7,8)表示tmp未定义,而Chrome可以获得它。
在这里小提琴:http://jsfiddle.net/wong2/R6uP8/