js write()方法学习

来源:互联网 发布:漫画教程软件下载 编辑:程序博客网 时间:2024/05/18 03:31

一、如果使用write()方式给页面添加内容,必须要在页面加载完成之前输入,否则它将覆盖页面的内容,显示最后打印的内容

 

<html> <head> <TITLE>class_obj_js_class</TITLE> <script language=javaScript> window.onload = function(){//document.write("我是添加内容");}document.write("我是添加内容");</script> <body > dafdfad</body> </html>

 显示的内容是:我是添加内容 dafdfad

 

<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>

 

原创粉丝点击