function runCode(obj) {
var myWin = window.open('', '_blank', '');
var t = document.getElementById(obj).value;
//myWin.document.open('text/html', 'replace');
myWin.opener = null;
myWin.document.write(t);
//myWin.document.close();
}本函数是运行textarea上的内容。中间有两条注释,加与不加都可以正常跑起来。但不太明白意思,求注释这两行,作者写的用意?
var myWin = window.open('', '_blank', '');
var t = document.getElementById(obj).value;
//myWin.document.open('text/html', 'replace');
myWin.opener = null;
myWin.document.write(t);
//myWin.document.close();
}本函数是运行textarea上的内容。中间有两条注释,加与不加都可以正常跑起来。但不太明白意思,求注释这两行,作者写的用意?
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>test html</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="styles/common.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
//obj为id
function runCode(obj) {
var myWin = window.open('', '_blank', '');
var t = document.getElementById(obj).value;
myWin.document.open('text/html', 'replace');
myWin.opener = null;
myWin.document.write(t);
myWin.document.close();
}
</script>
</head><body>
<div class="box">
<textarea id="runCode0" class="textarea">
</textarea>
<input onclick="runCode('runCode0')" class="input_btn" type="button" value="运行代码" /></div></body>
</html>
完整代码
首先这与textarea中写的是什么代码有很大关系,如果是html+js+css等这些类似的WEB代码呢(代码要完整),无论注释不注释掉那两行都可以,var myWin = window.open('', '_blank', '');这里都会打开一个页面如果是以上代码浏览器会自动完成解析,最终你会看到想要的结果,如果代码不是我举得例子需要编译的话,估计就像是成代码的形式了。myWin.document.open('text/html', 'replace');这行其实就是控制页面的文本类型,要浏览器显示一个text/html的html页面,如果是以上代码无所谓的。myWin.document.close();最后是个关掉document对象,当然这里是为了回收资源才这么做的,可以注释掉无非就是占用着资源罢了。
个人理解希望有所帮助,当然有错误也希望大家指正。