一、使用write()方式给页面添加内容,必须要在页面加载完成之前输入,否则它将覆盖页面的内容,显示最后打印的内容。
1,原生js
 
复制代码 代码示例:
<html>   
<head>   
<TITLE>class_obj_js_class</TITLE>   
<script language=
javascript>   
window.onload = function(){  
    //document.write("我是添加内容");  
}  
document.write("我是添加内容");  
</script>   
<body >   
dafdfad  
</body>   
</html>
 
显示内容:我是添加内容 dafdfad
 
2,jquery方式
 
复制代码 代码示例:
<html>   
<head>   
<TITLE>class_obj_js_class</TITLE>  
<script type="text/javascript" src="jquery-1.4.4.js"></script>  
<script language=javaScript>   
window.onload = function(){  
    document.write("我是添加内容");  
}  
document.write("我是添加内容");  
</script>   
<body onload="init()">   
dafdfad  
</body>   
</html>  
 
显示的内容是:我是添加内容 
 
备注:如果需要在页面中打印控件就需要在页面加载完毕之前,否则就会出现页面的JS内容覆盖没有了。
 
二、document.write()会把输出写入到脚本文档所在的位置,浏览器解析完document.write()方法之后,会继续解析输出的内容。
 
复制代码 代码示例:
<html>   
<head>   
<TITLE>class_obj_js_class</TITLE>   
<script language=javaScript>   
    document.write("head");  
</script>   
<body >   
<script language=javaScript>   
    document.write("body start");  
</script>   
dafdfad  
<script language=javaScript>   
    document.write("body end");  
</script>   
</body>   
</html>  
 
显示内容:head body start dafdfad body end
 
浏览器打印脚本功能<script>
每当浏览器遇到</script>,它都假定其中的代码块是完整的(即使它出现在javascript字符串当中)
 
复制代码 代码示例:
<script>  
document.write("<script>alert(1)</script>");  
</script>  
浏览器解释为
<script>  
document.write("<script>alert(1)</script>  
 
 这样就导致浏览器解释异常了
 
解决办法:
 
复制代码 代码示例:
<script>  
document.write("<script>alert(1)</sc"+"ript>");  
</script>