﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>IT博客-十三郎的IT生活-随笔分类-JS</title><link>http://www.cnitblog.com/shisanlangd/category/8036.html</link><description /><language>zh-cn</language><lastBuildDate>Mon, 26 Sep 2011 07:10:18 GMT</lastBuildDate><pubDate>Mon, 26 Sep 2011 07:10:18 GMT</pubDate><ttl>60</ttl><item><title>网页 unicode</title><link>http://www.cnitblog.com/shisanlangd/archive/2009/03/05/55119.html</link><dc:creator>十三郎</dc:creator><author>十三郎</author><pubDate>Thu, 05 Mar 2009 03:51:00 GMT</pubDate><guid>http://www.cnitblog.com/shisanlangd/archive/2009/03/05/55119.html</guid><wfw:comment>http://www.cnitblog.com/shisanlangd/comments/55119.html</wfw:comment><comments>http://www.cnitblog.com/shisanlangd/archive/2009/03/05/55119.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/shisanlangd/comments/commentRss/55119.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/shisanlangd/services/trackbacks/55119.html</trackback:ping><description><![CDATA[<p>原理;&nbsp;</p>
<p>网页(HTML)Unicode的格式是&#<font color="#ff0000">40644</font>;中间的那一部分是字符的UNICODE编码,前后都是标志位;</p>
<p>实现代码就很简单了:</p>
<p>String s = "&#" + (int)'黄' + ";"</p>
<p>s就是转换后的UNICODE码了.</p><img src ="http://www.cnitblog.com/shisanlangd/aggbug/55119.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/shisanlangd/" target="_blank">十三郎</a> 2009-03-05 11:51 <a href="http://www.cnitblog.com/shisanlangd/archive/2009/03/05/55119.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JS格式化/反格式化工具</title><link>http://www.cnitblog.com/shisanlangd/archive/2009/02/11/54410.html</link><dc:creator>十三郎</dc:creator><author>十三郎</author><pubDate>Wed, 11 Feb 2009 03:34:00 GMT</pubDate><guid>http://www.cnitblog.com/shisanlangd/archive/2009/02/11/54410.html</guid><wfw:comment>http://www.cnitblog.com/shisanlangd/comments/54410.html</wfw:comment><comments>http://www.cnitblog.com/shisanlangd/archive/2009/02/11/54410.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/shisanlangd/comments/commentRss/54410.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/shisanlangd/services/trackbacks/54410.html</trackback:ping><description><![CDATA[反格式化工具：<br><a href="http://tool.chinaz.com/Tools/JsFormat.aspx">http://tool.chinaz.com/Tools/JsFormat.aspx</a><br><br><br>格式化工具：<br><a href="http://www.codeandcoffee.com/2006/10/02/compress-your-javascript/">http://www.codeandcoffee.com/2006/10/02/compress-your-javascript/</a><br><a href="http://www.wxwdesign.cn/article/244.htm">http://www.wxwdesign.cn/article/244.htm</a> <img src ="http://www.cnitblog.com/shisanlangd/aggbug/54410.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/shisanlangd/" target="_blank">十三郎</a> 2009-02-11 11:34 <a href="http://www.cnitblog.com/shisanlangd/archive/2009/02/11/54410.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>iframe背景透明</title><link>http://www.cnitblog.com/shisanlangd/archive/2009/01/13/53726.html</link><dc:creator>十三郎</dc:creator><author>十三郎</author><pubDate>Tue, 13 Jan 2009 01:54:00 GMT</pubDate><guid>http://www.cnitblog.com/shisanlangd/archive/2009/01/13/53726.html</guid><wfw:comment>http://www.cnitblog.com/shisanlangd/comments/53726.html</wfw:comment><comments>http://www.cnitblog.com/shisanlangd/archive/2009/01/13/53726.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/shisanlangd/comments/commentRss/53726.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/shisanlangd/services/trackbacks/53726.html</trackback:ping><description><![CDATA[&lt;iframe allowTransparency="true" style="background-color=transparent"&gt;&lt;/iframe&gt;<br> <img src ="http://www.cnitblog.com/shisanlangd/aggbug/53726.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/shisanlangd/" target="_blank">十三郎</a> 2009-01-13 09:54 <a href="http://www.cnitblog.com/shisanlangd/archive/2009/01/13/53726.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>js操作cookie</title><link>http://www.cnitblog.com/shisanlangd/archive/2008/08/06/47686.html</link><dc:creator>十三郎</dc:creator><author>十三郎</author><pubDate>Wed, 06 Aug 2008 01:43:00 GMT</pubDate><guid>http://www.cnitblog.com/shisanlangd/archive/2008/08/06/47686.html</guid><wfw:comment>http://www.cnitblog.com/shisanlangd/comments/47686.html</wfw:comment><comments>http://www.cnitblog.com/shisanlangd/archive/2008/08/06/47686.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/shisanlangd/comments/commentRss/47686.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/shisanlangd/services/trackbacks/47686.html</trackback:ping><description><![CDATA[<br>function getCookie(name)<br>{<br>&nbsp;&nbsp;&nbsp; var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));<br>&nbsp;&nbsp;&nbsp; if(arr != null) return unescape(arr[2]); return null;<br>}<br>function setCookie(name,value)<br>{<br>&nbsp;&nbsp;&nbsp; var exp = new Date();<br>&nbsp;&nbsp;&nbsp; exp.setTime(exp.getTime()+365*24*60*60*1000);<br>&nbsp;&nbsp;&nbsp; document.cookie = name+"="+escape(value)+";expires="+exp.toGMTString();<br>}<br> <img src ="http://www.cnitblog.com/shisanlangd/aggbug/47686.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/shisanlangd/" target="_blank">十三郎</a> 2008-08-06 09:43 <a href="http://www.cnitblog.com/shisanlangd/archive/2008/08/06/47686.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>clientHeight、offsetHeight和scrollHeight</title><link>http://www.cnitblog.com/shisanlangd/archive/2008/03/07/40644.html</link><dc:creator>十三郎</dc:creator><author>十三郎</author><pubDate>Fri, 07 Mar 2008 10:08:00 GMT</pubDate><guid>http://www.cnitblog.com/shisanlangd/archive/2008/03/07/40644.html</guid><wfw:comment>http://www.cnitblog.com/shisanlangd/comments/40644.html</wfw:comment><comments>http://www.cnitblog.com/shisanlangd/archive/2008/03/07/40644.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/shisanlangd/comments/commentRss/40644.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/shisanlangd/services/trackbacks/40644.html</trackback:ping><description><![CDATA[<div id="articleBody">
<p>我们这里说说四种浏览器对 document.body 的&nbsp;clientHeight、offsetHeight 和 scrollHeight 的解释，这里说的是 document.body，如果是 HTML 控件，则又有不同，<a href="http://www.cftea.com/c/2006/12/PCTKER6T0V62S854.asp" target="_blank">点击这里</a>查看。</p>
<p>这四种浏览器分别为IE（Internet Explorer）、NS（Netscape）、Opera、FF（FireFox）。</p>
<p><strong>clientHeight<br></strong>大家对 clientHeight 都没有什么异议，都认为是内容可视区域的高度，也就是说页面浏览器中可以看到内容的这个区域的高度，一般是最后一个工具条以下到状态栏以上的这个区域，与页面内容无关。</p>
<p><strong>offsetHeight<br></strong>IE、Opera 认为 offsetHeight = clientHeight + 滚动条 + 边框。<br>NS、FF 认为 offsetHeight 是网页内容实际高度，可以小于 clientHeight。</p>
<p><strong>scrollHeight</strong><br>IE、Opera 认为 scrollHeight 是网页内容实际高度，可以小于 clientHeight。<br>NS、FF 认为 scrollHeight 是网页内容高度，不过最小值是 clientHeight。</p>
<p><strong>简单地说</strong><br>clientHeight 就是透过浏览器看内容的这个区域高度。<br>NS、FF 认为
offsetHeight 和 scrollHeight 都是网页内容高度，只不过当网页内容高度小于等于 clientHeight
时，scrollHeight 的值是 clientHeight，而 offsetHeight 可以小于 clientHeight。<br>IE、Opera 认为 offsetHeight 是可视区域&nbsp;clientHeight 滚动条加边框。scrollHeight 则是网页内容实际高度。</p>
<p><strong>同理</strong><br>clientWidth、offsetWidth 和 scrollWidth 的解释与上面相同，只是把高度换成宽度即可。</p>
<p><strong>说明<br></strong>以上基于 DTD HTML 4.01 Transitional，如果是 DTD XHTML
1.0 Transitional 则意义又会不同，在 XHTML
中这三个值都是同一个值，都表示内容的实际高度。新版本的浏览器大多支持根据页面指定的 DOCTYPE 来启用不同的解释器。下载或浏览<a href="http://www.cftea.com/c/751/PX8O1XEX53RM4DIW.htm" target="_blank">测试文件</a>。</p>
</div><img src ="http://www.cnitblog.com/shisanlangd/aggbug/40644.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/shisanlangd/" target="_blank">十三郎</a> 2008-03-07 18:08 <a href="http://www.cnitblog.com/shisanlangd/archive/2008/03/07/40644.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于处理GET方式提交的含有特殊字符的参数</title><link>http://www.cnitblog.com/shisanlangd/archive/2008/02/28/40277.html</link><dc:creator>十三郎</dc:creator><author>十三郎</author><pubDate>Thu, 28 Feb 2008 15:42:00 GMT</pubDate><guid>http://www.cnitblog.com/shisanlangd/archive/2008/02/28/40277.html</guid><wfw:comment>http://www.cnitblog.com/shisanlangd/comments/40277.html</wfw:comment><comments>http://www.cnitblog.com/shisanlangd/archive/2008/02/28/40277.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/shisanlangd/comments/commentRss/40277.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/shisanlangd/services/trackbacks/40277.html</trackback:ping><description><![CDATA[特殊特殊字符的含义 <br>———————————————————————————— <br>　　字符　　　　特殊字符的含义　　　　　　　URL编码 <br>　 #　　　　　　用来标志特定的文档位置　　　%23 <br>　 %　　　　　　对特殊字符进行编码　　　　　%25 <br>　 &amp;　　　　　　分隔不同的变量值对　　　　　%26 <br>　 +　　　　　　在变量值中表示空格　　　　　%2B <br>　 \　　　　　　表示目录路径　　　　　　　　%2F <br>　 =　　　　　　用来连接键和值　　　　　　　%3D <br>　 ?　　　　　　表示查询字符串的开始　　　　%3F <br> <img src ="http://www.cnitblog.com/shisanlangd/aggbug/40277.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/shisanlangd/" target="_blank">十三郎</a> 2008-02-28 23:42 <a href="http://www.cnitblog.com/shisanlangd/archive/2008/02/28/40277.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>document.execCommand()函数可用参数解析</title><link>http://www.cnitblog.com/shisanlangd/archive/2008/02/21/40003.html</link><dc:creator>十三郎</dc:creator><author>十三郎</author><pubDate>Thu, 21 Feb 2008 03:31:00 GMT</pubDate><guid>http://www.cnitblog.com/shisanlangd/archive/2008/02/21/40003.html</guid><wfw:comment>http://www.cnitblog.com/shisanlangd/comments/40003.html</wfw:comment><comments>http://www.cnitblog.com/shisanlangd/archive/2008/02/21/40003.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/shisanlangd/comments/commentRss/40003.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/shisanlangd/services/trackbacks/40003.html</trackback:ping><description><![CDATA[<div class="cnt">
<p><font color="#000000">2D-Position 允许通过拖曳移动绝对定位的对象。 <br>
AbsolutePosition 设定元素的 position 属性为&#8220;absolute&#8221;(绝对)。 <br>
BackColor 设置或获取当前选中区的背景颜色。 <br>
BlockDirLTR 目前尚未支持。 <br>
BlockDirRTL 目前尚未支持。 <br>
Bold 切换当前选中区的粗体显示与否。 <br>
BrowseMode 目前尚未支持。 <br>
Copy 将当前选中区复制到剪贴板。 <br>
CreateBookmark 创建一个书签锚或获取当前选中区或插入点的书签锚的名称。 <br>
CreateLink 在当前选中区上插入超级链接，或显示一个对话框允许用户指定要为当前选中区插入的超级链接的 URL。 <br>
Cut 将当前选中区复制到剪贴板并删除之。 <br>
Delete 删除当前选中区。 <br>
DirLTR 目前尚未支持。 <br>
DirRTL 目前尚未支持。 <br>
EditMode 目前尚未支持。 <br>
FontName 设置或获取当前选中区的字体。 <br>
FontSize 设置或获取当前选中区的字体大小。 <br>
ForeColor 设置或获取当前选中区的前景(文本)颜色。 <br>
FormatBlock 设置当前块格式化标签。 <br>
Indent 增加选中文本的缩进。 <br>
InlineDirLTR 目前尚未支持。 <br>
InlineDirRTL 目前尚未支持。 <br>
InsertButton 用按钮控件覆盖当前选中区。 <br>
InsertFieldset 用方框覆盖当前选中区。 <br>
InsertHorizontalRule 用水平线覆盖当前选中区。 <br>
InsertIFrame 用内嵌框架覆盖当前选中区。 <br>
InsertImage 用图像覆盖当前选中区。 <br>
InsertInputButton 用按钮控件覆盖当前选中区。 <br>
InsertInputCheckbox 用复选框控件覆盖当前选中区。 <br>
InsertInputFileUpload 用文件上载控件覆盖当前选中区。 <br>
InsertInputHidden 插入隐藏控件覆盖当前选中区。 <br>
InsertInputImage 用图像控件覆盖当前选中区。 <br>
InsertInputPassword 用密码控件覆盖当前选中区。 <br>
InsertInputRadio 用单选钮控件覆盖当前选中区。 <br>
InsertInputReset 用重置控件覆盖当前选中区。 <br>
InsertInputSubmit 用提交控件覆盖当前选中区。 <br>
InsertInputText 用文本控件覆盖当前选中区。 <br>
InsertMarquee 用空字幕覆盖当前选中区。 <br>
InsertOrderedList 切换当前选中区是编号列表还是常规格式化块。 <br>
InsertParagraph 用换行覆盖当前选中区。 <br>
InsertSelectDropdown 用下拉框控件覆盖当前选中区。 <br>
InsertSelectListbox 用列表框控件覆盖当前选中区。 <br>
InsertTextArea 用多行文本输入控件覆盖当前选中区。 <br>
InsertUnorderedList 切换当前选中区是项目符号列表还是常规格式化块。 <br>
Italic 切换当前选中区斜体显示与否。 <br>
JustifyCenter 将当前选中区在所在格式化块置中。 <br>
JustifyFull 目前尚未支持。 <br>
JustifyLeft 将当前选中区所在格式化块左对齐。 <br>
JustifyNone 目前尚未支持。 <br>
JustifyRight 将当前选中区所在格式化块右对齐。 <br>
LiveResize 迫使 MSHTML 编辑器在缩放或移动过程中持续更新元素外观，而不是只在移动或缩放完成后更新。 <br>
MultipleSelection 允许当用户按住 Shift 或 Ctrl 键时一次选中多于一个站点可选元素。 <br>
Open 打开。 <br>
Outdent 减少选中区所在格式化块的缩进。 <br>
OverWrite 切换文本状态的插入和覆盖。 <br>
Paste 用剪贴板内容覆盖当前选中区。 <br>
PlayImage 目前尚未支持。 <br>
Print 打开打印对话框以便用户可以打印当前页。 <br>
Redo 重做。 <br>
Refresh 刷新当前文档。 <br>
RemoveFormat 从当前选中区中删除格式化标签。 <br>
RemoveParaFormat 目前尚未支持。 <br>
SaveAs 将当前 Web 页面保存为文件。 <br>
SelectAll 选中整个文档。 <br>
SizeToControl 目前尚未支持。 <br>
SizeToControlHeight 目前尚未支持。 <br>
SizeToControlWidth 目前尚未支持。 <br>
Stop 停止。 <br>
StopImage 目前尚未支持。 <br>
StrikeThrough 目前尚未支持。 <br>
Subscript 目前尚未支持。 <br>
Superscript 目前尚未支持。 <br>
UnBookmark 从当前选中区中删除全部书签。 <br>
Underline 切换当前选中区的下划线显示与否。 <br>
Undo 撤消。 <br>
Unlink 从当前选中区中删除全部超级链接。 <br>
Unselect 清除当前选中区的选中状态。</font></p>
<p> </p>
<div class="cnt">
<p>&lt;HTML&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;HEAD&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;TITLE&gt;JavaScript--execCommand指令集&lt;/TITLE&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;SCRIPT LANGUAGE="javascript"&gt;</p>
<p>&lt;!--</p>
<p> </p>
<p>/*</p>
<p>*该function执行copy指令</p>
<p>*/</p>
<p>function fn_doufucopy(){</p>
<p>edit.select();</p>
<p>document.execCommand('Copy');</p>
<p>}</p>
<p>/*</p>
<p>*该function执行paste指令</p>
<p>*/</p>
<p>function fn_doufupaste() { </p>
<p>tt.focus();</p>
<p>document.execCommand('paste');</p>
<p>} </p>
<p>/*</p>
<p>*该function用来创建一个超链接</p>
<p>*/</p>
<p>function fn_creatlink()</p>
<p>{</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; document.execCommand('CreateLink',true,'true');//弹出一个对话框输入URL</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; //document.execCommand('CreateLink',false,'http://www.51js.com');</p>
<p>}</p>
<p>/*</p>
<p>*该function用来将选中的区块设为指定的背景色</p>
<p>*/</p>
<p>function fn_change_backcolor()</p>
<p>{</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; document.execCommand('BackColor',true,'#FFbbDD');//true或false都可以</p>
<p>}</p>
<p>/*</p>
<p>*该function用来将选中的区块设为指定的前景色,改变选中区块的字体大小,改变字体,字体变粗变斜</p>
<p>*/</p>
<p>function fn_change_forecolor()</p>
<p>{</p>
<p>//指定前景色</p>
<p>document.execCommand('ForeColor',false,'#BBDDCC');//true或false都可以</p>
<p>//指定背景色</p>
<p>document.execCommand('FontSize',false,7);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //true或false都可以</p>
<p>//字体必须是系统支持的字体</p>
<p>document.execCommand('FontName',false,'标楷体');&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //true或false都可以</p>
<p>//字体变粗</p>
<p>document.execCommand('Bold');</p>
<p>//变斜体</p>
<p>document.execCommand('Italic');</p>
<p>}</p>
<p>/*</p>
<p>*该function用来将选中的区块加上不同的线条</p>
<p>*/</p>
<p>function fn_change_selection()</p>
<p>{</p>
<p>//将选中的文字加下划线</p>
<p>document.execCommand('Underline');</p>
<p>//在选中的文字上划粗线</p>
<p>document.execCommand('StrikeThrough');</p>
<p>//将选中的部分文字变细</p>
<p>document.execCommand('SuperScript');</p>
<p>//将选中区块的下划线取消掉</p>
<p>document.execCommand('Underline'); </p>
<p>}</p>
<p>/*</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; *该function用来将选中的区块排成不同的格式</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; */</p>
<p>function fn_format()</p>
<p>{</p>
<p>//有序列排列</p>
<p>document.execCommand('InsertOrderedList');</p>
<p>//实心无序列排列</p>
<p>document.execCommand('InsertUnorderedList');</p>
<p>//空心无序列排列</p>
<p>document.execCommand('Indent');</p>
<p>}</p>
<p>/*</p>
<p>*该function用来将选中的区块剪下或是删除掉</p>
<p>*/</p>
<p>function fn_CutOrDel()</p>
<p>{</p>
<p>//删除选中的区块</p>
<p>//document.execCommand('Delete');</p>
<p>//剪下选中的区块</p>
<p>document.execCommand('Cut');</p>
<p>}</p>
<p>/*</p>
<p>*该function用来将选中的区块重设为一个相应的物件</p>
<p>*/</p>
<p>function fn_InsObj()</p>
<p>{</p>
<p>/*</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; ******************************************</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; * 以下指令都是为选中的区块重设一个object;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; * 如没有特殊说明,第二个参数true或false是一样的;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; * 参数三表示为该object的id;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; * 可以用在javascript中通过其指定的id来控制它</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; ******************************************</p>
<p>*/</p>
<p>/*重设为一个button(InsertButton和InsertInputButtong一样,</p>
<p>只不前者是button,后者是input)*/</p>
<p>/*document.execCommand('InsertButton',false,"aa"); //true或false无效</p>
<p>document.all.aa.value="风舞九天";*/</p>
<p>//重设为一个fieldset</p>
<p>/*document.execCommand('InsertFieldSet',true,"aa");</p>
<p>document.all.aa.innerText="刀剑如梦";*/</p>
<p>//插入一个水平线</p>
<p>//document.execCommand('InsertHorizontalRule',true,"aa");</p>
<p>//插入一个iframe</p>
<p>//document.execCommand('InsertIFrame',true,"aa");</p>
<p>//插入一个InsertImage,设为true时需要图片,false时不需图片</p>
<p>//document.execCommand('InsertImage',false,"aa");</p>
<p>//插入一个checkbox</p>
<p>//document.execCommand('InsertInputCheckbox',true,"aa");</p>
<p>//插入一个file类型的object</p>
<p>//document.execCommand('InsertInputFileUpload',false,"aa");</p>
<p>//插入一个hidden</p>
<p>/*document.execCommand('InsertInputHidden',false,"aa");</p>
<p>alert(document.all.aa.id);*/</p>
<p>//插入一个InputImage</p>
<p>/*document.execCommand('InsertInputImage',false,"aa");</p>
<p>document.all.aa.src="F-a10.gif";*/</p>
<p>//插入一个Password</p>
<p>//document.execCommand('InsertInputPassword',true,"aa");</p>
<p>//插入一个Radio</p>
<p>//document.execCommand('InsertInputRadio',false,"aa");</p>
<p>//插入一个Reset</p>
<p>//document.execCommand('InsertInputReset',true,"aa");</p>
<p>//插入一个Submit</p>
<p>//document.execCommand('InsertInputSubmit',false,"aa");</p>
<p>//插入一个input text</p>
<p>//document.execCommand('InsertInputText',false,"aa");</p>
<p>//插入一个textarea</p>
<p>//document.execCommand('InsertTextArea',true,"aa");</p>
<p>//插入一个 select list box</p>
<p>//document.execCommand('InsertSelectListbox',false,"aa");</p>
<p>//插入一个single select</p>
<p>document.execCommand('InsertSelectDropdown',true,"aa");</p>
<p>//插入一个line break(硬回车??)</p>
<p>//document.execCommand('InsertParagraph');</p>
<p>//插入一个marquee</p>
<p>/*document.execCommand('InsertMarquee',true,"aa");</p>
<p>document.all.aa.innerText="bbbbb";*/</p>
<p>//用于取消选中的阴影部分</p>
<p>//document.execCommand('Unselect');</p>
<p>//选中页面上的所有元素</p>
<p>//document.execCommand('SelectAll');</p>
<p>}</p>
<p>/*</p>
<p>*该function用来将页面保存为一个文件</p>
<p>*/</p>
<p>function fn_save()</p>
<p>{</p>
<p>//第二个参数为欲保存的文件名</p>
<p>document.execCommand('SaveAs','mycodes.txt');</p>
<p>//打印整个页面</p>
<p>//document.execCommand('print');</p>
<p>}</p>
<p>--&gt; </p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/SCRIPT&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/HEAD&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;body&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input id="edit" value="范例" NAME="edit"&gt;&lt;br&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;button onclick="fn_doufucopy()"
ID="Button1"&gt;Copy&lt;/button&gt; &lt;button
onclick="fn_doufupaste()" ID="Button2"&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; paste&lt;/button&gt;&lt;br&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;textarea id="tt" rows="10" cols="50" NAME="tt"&gt;&lt;/textarea&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;hr&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;br&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 浮沉聚散变化又再,但是总可卷土重来.&lt;br&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 天若有情天亦老,人间正道是沧桑.&lt;br&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 都怪我,太执着,却也等不到花开叶落.&lt;br&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;br&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Please select above letters, then click following buttons:&lt;br&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;hr&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="button" value="创建CreateLink" onclick="fn_creatlink()" ID="Button3" NAME="Button3"&gt;&lt;br&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="button" value="改变文字背景色" onclick="fn_change_backcolor()" ID="Button4" NAME="Button4"&gt;&lt;br&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="button" value="改变文字前景色" onclick="fn_change_forecolor()" ID="Button5" NAME="Button5"&gt;&lt;br&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="button" value="给文字加线条" onclick="fn_change_selection()" ID="Button6" NAME="Button6"&gt;&lt;br&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="button" value="改变文字的排列" onclick="fn_format()" ID="Button7" NAME="Button7"&gt;&lt;br&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="button" value="删除或剪下选中的部分" onclick="fn_CutOrDel()" ID="Button8" NAME="Button8"&gt;&lt;br&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="button" value="插入Object" onclick="fn_InsObj()" ID="Button9" NAME="Button9"&gt;&lt;br&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="button" value="保存或打印文件" onclick="fn_save()" ID="Button10" NAME="Button10"&gt;&lt;br&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type="button" value="测试Refresh属性" onclick="document.execCommand('Refresh')" ID="Button11"</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NAME="Button11"&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/body&gt;</p>
<p>&lt;/HTML&gt;</p>
<p style="text-indent: 2em;">普通的方式是激活一个&lt;iframe&gt;进入编辑状态，命令如下</p>
<p style="text-indent: 2em;">IframeNamer.document.designMode="On"</p>
<p style="text-indent: 2em;">字体--宋体、黑体、楷体等</p>
<p style="text-indent: 2em;">execCommand("fontname","",字体)</p>
<p style="text-indent: 2em;">字号--字号大小</p>
<p style="text-indent: 2em;">execCommand("fontsize","",字号)</p>
<p style="text-indent: 2em;">加重</p>
<p style="text-indent: 2em;">execCommand("Bold")</p>
<p style="text-indent: 2em;">斜体</p>
<p style="text-indent: 2em;">execCommand("Italic")</p>
<p style="text-indent: 2em;">下划线</p>
<p style="text-indent: 2em;">execCommand("Underline")</p>
<p style="text-indent: 2em;">删除线</p>
<p style="text-indent: 2em;">execCommand("StrikeThrough")</p>
<p style="text-indent: 2em;">上标</p>
<p style="text-indent: 2em;">execCommand("SuperScript")</p>
<p style="text-indent: 2em;">下标</p>
<p style="text-indent: 2em;">execCommand("SubScript")</p>
<p style="text-indent: 2em;">有序排列--数字序号</p>
<p style="text-indent: 2em;">execCommand("InsertOrderedList")</p>
<p style="text-indent: 2em;">无序排列--圆点序号</p>
<p style="text-indent: 2em;">execCommand("InsertUnorderedList")</p>
<p style="text-indent: 2em;">向前缩进</p>
<p style="text-indent: 2em;">execCommand("Outdent")</p>
<p style="text-indent: 2em;">向后缩进</p>
<p style="text-indent: 2em;">execCommand("Indent")</p>
<p style="text-indent: 2em;">居左</p>
<p style="text-indent: 2em;">execCommand("JustifyLeft")</p>
<p style="text-indent: 2em;">居右</p>
<p style="text-indent: 2em;">execCommand("JustifyRight")</p>
<p style="text-indent: 2em;">居中</p>
<p style="text-indent: 2em;">execCommand("JustifyCenter")</p>
<p style="text-indent: 2em;">剪切</p>
<p style="text-indent: 2em;">execCommand("Cut")</p>
<p style="text-indent: 2em;">拷贝</p>
<p style="text-indent: 2em;">execCommand("Copy")</p>
<p style="text-indent: 2em;">粘贴</p>
<p style="text-indent: 2em;">execCommand("Paste")</p>
<p style="text-indent: 2em;">覆盖</p>
<p style="text-indent: 2em;">execCommand("Overwrite")</p>
<p style="text-indent: 2em;">取消操作--IE5.0以后可以无限取消</p>
<p style="text-indent: 2em;">execCommand("Undo")</p>
<p style="text-indent: 2em;">重复操作</p>
<p style="text-indent: 2em;">execCommand("Redo")</p>
<p style="text-indent: 2em;">设置链接--若按以下写法，在IE5.0版本中会激活一个内建窗口，可以完成输入链接的功能，而且还可以选择MAILTO、FTP等各种链接类型，比较方便</p>
<p style="text-indent: 2em;">execCommand("CreateLink")</p>
<p style="text-indent: 2em;">在IE4.0中，没有内建链接输入窗口，所以就需要用以下方式嵌入链接</p>
<p style="text-indent: 2em;">execCommand("CreateLink","",TURL)</p>
<p style="text-indent: 2em;">插入图片--由于IE中嵌入的可编控件是针对本地资源的，所以其默认的图片资源来自本地，所以基于WEB内容的编辑最好自己做输入框，然后用如下命令实现。</p>
<p style="text-indent: 2em;">execCommand("InsertImage","",ImgURL)</p>
<p style="text-indent: 2em;">字体颜色</p>
<p style="text-indent: 2em;">execCommand("ForeColor","",CColor)</p>
</div>
</div><img src ="http://www.cnitblog.com/shisanlangd/aggbug/40003.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/shisanlangd/" target="_blank">十三郎</a> 2008-02-21 11:31 <a href="http://www.cnitblog.com/shisanlangd/archive/2008/02/21/40003.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Javascript：动态载入Javascript 和CSS 文件</title><link>http://www.cnitblog.com/shisanlangd/archive/2008/01/15/38879.html</link><dc:creator>十三郎</dc:creator><author>十三郎</author><pubDate>Tue, 15 Jan 2008 07:16:00 GMT</pubDate><guid>http://www.cnitblog.com/shisanlangd/archive/2008/01/15/38879.html</guid><wfw:comment>http://www.cnitblog.com/shisanlangd/comments/38879.html</wfw:comment><comments>http://www.cnitblog.com/shisanlangd/archive/2008/01/15/38879.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/shisanlangd/comments/commentRss/38879.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/shisanlangd/services/trackbacks/38879.html</trackback:ping><description><![CDATA[<p>常见的载入 Javascript (.js) 和CSS (.css)文件的方法一般是在网页的&lt;HEAD&gt;部分添加一个引用。如下所示：</p>
<div class="code_container clear">
<h5>Code (xHtml)</h5>
<ol>
    <li><code>&lt;head&gt;</code></li>
    <li class="tab1"><code>&lt;script type="text/javascript" src="myjs.js"&gt;&lt;/script&gt;</code></li>
    <li class="tab1"><code>&lt;link rel="stylesheet" type="text/css" href="main.css" /&gt;</code></li>
    <li><code>&lt;/head&gt;</code></li>
</ol>
</div>
<p>在大多数情况下，这样操作完全可以满足我们的需要，但是在 Ajax 应用越来越多的今天，你可能需要一种能够动态加载 <strong>*.js</strong> 和 <strong>*.css</strong> 文件的方法。</p>
<p>简单而言，要动态载入一个<strong>.js</strong> 文件或<strong>.css</strong> 文件，首先需要利用DOM 方法为文档创建一个"script" 或"link" 元素，然后为它们指定合适的属性，最后利用<span class="code">element.appendChild()</span>方法将元素添加到文档树中理想的位置。以下是实现代码：</p>
<div class="code_container">
<h5>Code (Javascript)</h5>
<ol>
    <li><code><span class="key">function</span> LoadJsCssFile(filename, filetype){</code></li>
    <li class="tab1"><code><span class="key">if</span> (filetype=="js"){ <span class="comment">//如果是.js文件</span></code></li>
    <li class="tab2"><code><span class="key">var</span> fileref=document.createElement(<span class="value">'script'</span>);</code></li>
    <li class="tab2"><code>fileref.setAttribute(<span class="value">"type"</span>,<span class="value">"text/javascript"</span>);</code></li>
    <li class="tab2"><code>fileref.setAttribute(<span class="value">"src"</span>,filename);</code></li>
    <li class="tab1"><code>}</code></li>
    <li class="tab1"><code><span class="key">else if</span> (filetype==<span class="value">"css"</span>){ <span class="comment">//如果是.css文件</span></code></li>
    <li class="tab2"><code><span class="key">var</span> fileref=document.createElement(<span class="value">"link"</span>);</code></li>
    <li class="tab2"><code>fileref.setAttribute(<span class="value">"rel"</span>, <span class="value">"stylesheet"</span>);</code></li>
    <li class="tab2"><code>fileref.setAttribute(<span class="value">"type"</span>, <span class="value">"text/css"</span>);</code></li>
    <li class="tab2"><code>fileref.setAttribute(<span class="value">"href"</span>,filename);</code></li>
    <li class="tab1"><code>}</code></li>
    <li class="tab1"><code><span class="key">if</span> (<span class="key">typeof</span> fileref != <span class="comment">"undefined"</span>)</code></li>
    <li class="tab1"><code>document.getElementsByTagName(<span class="value">"head"</span>)[0].appendChild(fileref)</code></li>
    <li><code>}</code></li>
    <li>&nbsp;</li>
    <li><code>LoadJsCssFile(<span class="value">"myscript.js"</span>, <span class="value">"js"</span>); <span class="comment">//动态载入.js 文件</span></code></li>
    <li><code>LoadJsCssFile(<span class="value">"javascript.php"</span>, <span class="value">"js"</span>); <span class="comment">//将".php" 文件作为.js 文件动态载入</span></code></li>
    <li><code>LoadJsCssFile(<span class="value">"main.css"</span>, <span class="value">"css"</span>); <span class="comment">//动态载入.css 文件</span></code></li>
</ol>
</div>
<p>此外，还可以添加一个新方法，在载入.js 或.css 文件前判断此文件是否已经加载，从而避免重复加载。代码如下：</p>
<div class="code_container">
<h5>Code (Javascript)</h5>
<ol>
    <li><code><span class="key">var</span> filesadded = <span class="value">""</span> <span class="comment">//已经加载的文件列表</span></code></li>
    <li>&nbsp;</li>
    <li><code><span class="key">function</span> CheckLoadJsCssFile(filename, filetype){</code></li>
    <li class="tab1"><code><span class="key">if</span> (filesadded.indexOf(<span class="value">"["</span>+filename+<span class="value">"]"</span>)==-1){</code></li>
    <li class="tab2"><code>LoadJsCssFile(filename, filetype);</code></li>
    <li class="tab2"><code>filesadded += <span class="value">"["</span>+filename+<span class="value">"]"</span>; <span class="comment">//从表单中加载的文件列表</span></code></li>
    <li class="tab1"><code>}</code></li>
    <li class="tab1"><code><span class="key">else</span></code></li>
    <li class="tab2"><code>alert(<span class="value">'该文件已经添加！'</span>);</code></li>
    <li><code>}</code></li>
    <li>&nbsp;</li>
    <li><code>CheckLoadJsCssFile(<span class="value">"myscript.js"</span>, "js") <span class="comment">//加载成功</span></code></li>
    <li><code>CheckLoadJsCssFile(<span class="value">"myscript.js"</span>, "js") <span class="comment">//文件存在，不再加载</span></code></li>
</ol>
</div><img src ="http://www.cnitblog.com/shisanlangd/aggbug/38879.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/shisanlangd/" target="_blank">十三郎</a> 2008-01-15 15:16 <a href="http://www.cnitblog.com/shisanlangd/archive/2008/01/15/38879.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>js innerHTML 问题</title><link>http://www.cnitblog.com/shisanlangd/archive/2007/12/11/37576.html</link><dc:creator>十三郎</dc:creator><author>十三郎</author><pubDate>Tue, 11 Dec 2007 06:51:00 GMT</pubDate><guid>http://www.cnitblog.com/shisanlangd/archive/2007/12/11/37576.html</guid><wfw:comment>http://www.cnitblog.com/shisanlangd/comments/37576.html</wfw:comment><comments>http://www.cnitblog.com/shisanlangd/archive/2007/12/11/37576.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/shisanlangd/comments/commentRss/37576.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/shisanlangd/services/trackbacks/37576.html</trackback:ping><description><![CDATA[<div class="content">
<p>相信很多Ajax初学者都会遇到：用innerhtml插入的JS脚本无法执行，用Google搜了很久，找了两个不错的解决方案...<br>
<br>
<strong>方案1:来自济南大学马秉尧老师的innerhtml.js</strong></p>
<div class="codeText">
<div class="codeHead">JavaScript代码</div>
<ol class="dp-c" start="1">
    <li class="alt"><span><span class="comment">/*&nbsp;innerhtml.js</span>&nbsp;</span></li>
    <li class=""><span><span class="comment">&nbsp;*&nbsp;Copyright&nbsp;Ma&nbsp;Bingyao&nbsp;&lt;andot@ujn.edu.cn&gt;</span>&nbsp;</span></li>
    <li class="alt"><span><span class="comment">&nbsp;*&nbsp;Version:&nbsp;1.9</span>&nbsp;</span></li>
    <li class=""><span><span class="comment">&nbsp;*&nbsp;LastModified:&nbsp;2006-06-04</span>&nbsp;</span></li>
    <li class="alt"><span><span class="comment">&nbsp;*&nbsp;This&nbsp;library&nbsp;is&nbsp;free.&nbsp;&nbsp;You&nbsp;can&nbsp;redistribute&nbsp;it&nbsp;and/or&nbsp;modify&nbsp;it.</span>&nbsp;</span></li>
    <li class=""><span><span class="comment">&nbsp;*&nbsp;http://www.coolcode.cn/?p=117</span>&nbsp;</span></li>
    <li class="alt"><span><span class="comment">&nbsp;*/</span><span>&nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span><span class="keyword">var</span><span>&nbsp;global_html_pool&nbsp;=&nbsp;[];&nbsp;&nbsp;</span></span></li>
    <li class=""><span><span class="keyword">var</span><span>&nbsp;global_script_pool&nbsp;=&nbsp;[];&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span><span class="keyword">var</span><span>&nbsp;global_script_src_pool&nbsp;=&nbsp;[];&nbsp;&nbsp;</span></span></li>
    <li class=""><span><span class="keyword">var</span><span>&nbsp;global_lock_pool&nbsp;=&nbsp;[];&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span><span class="keyword">var</span><span>&nbsp;innerhtml_lock&nbsp;=&nbsp;</span><span class="keyword">null</span><span>;&nbsp;&nbsp;</span></span></li>
    <li class=""><span><span class="keyword">var</span><span>&nbsp;document_buffer&nbsp;=&nbsp;</span><span class="string">""</span><span>;&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span><span class="keyword">function</span><span>&nbsp;set_innerHTML(obj_id,&nbsp;html,&nbsp;time)&nbsp;{&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">if</span><span>&nbsp;(innerhtml_lock&nbsp;==&nbsp;</span><span class="keyword">null</span><span>)&nbsp;{&nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;innerhtml_lock&nbsp;=&nbsp;obj_id;&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">else</span><span>&nbsp;</span><span class="keyword">if</span><span>&nbsp;(</span><span class="keyword">typeof</span><span>(time)&nbsp;==&nbsp;</span><span class="string">"undefined"</span><span>)&nbsp;{&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;global_lock_pool[obj_id&nbsp;+&nbsp;<span class="string">"_html"</span><span>]&nbsp;=&nbsp;html;&nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;window.setTimeout(<span class="string">"set_innerHTML('"</span><span>&nbsp;+&nbsp;obj_id&nbsp;+&nbsp;</span><span class="string">"',&nbsp;global_lock_pool['"</span><span>&nbsp;+&nbsp;obj_id&nbsp;+&nbsp;</span><span class="string">"_html']);"</span><span>,&nbsp;10);&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">return</span><span>;&nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">else</span><span>&nbsp;</span><span class="keyword">if</span><span>&nbsp;(innerhtml_lock&nbsp;!=&nbsp;obj_id)&nbsp;{&nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;global_lock_pool[obj_id&nbsp;+&nbsp;<span class="string">"_html"</span><span>]&nbsp;=&nbsp;html;&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;window.setTimeout(<span class="string">"set_innerHTML('"</span><span>&nbsp;+&nbsp;obj_id&nbsp;+&nbsp;</span><span class="string">"',&nbsp;global_lock_pool['"</span><span>&nbsp;+&nbsp;obj_id&nbsp;+&nbsp;</span><span class="string">"_html'],&nbsp;"</span><span>&nbsp;+&nbsp;time&nbsp;+&nbsp;</span><span class="string">");"</span><span>,&nbsp;10);&nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">return</span><span>;&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">function</span><span>&nbsp;get_script_id()&nbsp;{&nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">return</span><span>&nbsp;</span><span class="string">"script_"</span><span>&nbsp;+&nbsp;(</span><span class="keyword">new</span><span>&nbsp;Date()).getTime().toString(36)&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+&nbsp;Math.floor(Math.random()&nbsp;*&nbsp;100000000).toString(36);&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;document_buffer&nbsp;=&nbsp;<span class="string">""</span><span>;&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;document.write&nbsp;=&nbsp;<span class="keyword">function</span><span>&nbsp;(str)&nbsp;{&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document_buffer&nbsp;+=&nbsp;str;&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;document.writeln&nbsp;=&nbsp;<span class="keyword">function</span><span>&nbsp;(str)&nbsp;{&nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document_buffer&nbsp;+=&nbsp;str&nbsp;+&nbsp;<span class="string">"\n"</span><span>;&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;global_html_pool&nbsp;=&nbsp;[];&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">var</span><span>&nbsp;scripts&nbsp;=&nbsp;[];&nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;html&nbsp;=&nbsp;html.split(/&lt;\/script&gt;/i);&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">for</span><span>&nbsp;(</span><span class="keyword">var</span><span>&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&nbsp;&lt;&nbsp;html.length;&nbsp;i++)&nbsp;{&nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;global_html_pool[i]&nbsp;=&nbsp;html[i].replace(/&lt;script[\s\S]*$/ig,&nbsp;<span class="string">""</span><span>);&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scripts[i]&nbsp;=&nbsp;{text:&nbsp;<span class="string">''</span><span>,&nbsp;src:&nbsp;</span><span class="string">''</span><span>&nbsp;};&nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scripts[i].text&nbsp;=&nbsp;html[i].substr(global_html_pool[i].length);&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scripts[i].src&nbsp;=&nbsp;scripts[i].text.substr(0,&nbsp;scripts[i].text.indexOf(<span class="string">'&gt;'</span><span>)&nbsp;+&nbsp;1);&nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scripts[i].src&nbsp;=&nbsp;scripts[i].src.match(/src\s*=\s*(\<span class="string">"([^\"]*)\"|\'([^\']*)\'|([^\s]*)[\s&gt;])/i);</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(scripts[i].src)&nbsp;{</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(scripts[i].src[2])&nbsp;{</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scripts[i].src&nbsp;=&nbsp;scripts[i].src[2];</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if&nbsp;(scripts[i].src[3])&nbsp;{</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scripts[i].src&nbsp;=&nbsp;scripts[i].src[3];</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if&nbsp;(scripts[i].src[4])&nbsp;{</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scripts[i].src&nbsp;=&nbsp;scripts[i].src[4];</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;{</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scripts[i].src&nbsp;=&nbsp;"</span><span class="string">";</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scripts[i].text&nbsp;=&nbsp;"</span><span class="string">";</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;{</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scripts[i].src&nbsp;=&nbsp;"</span><span class="string">";</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scripts[i].text&nbsp;=&nbsp;scripts[i].text.substr(scripts[i].text.indexOf('&gt;')&nbsp;+&nbsp;1);</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scripts[i].text&nbsp;=&nbsp;scripts[i].text.replace(/^\s*&lt;\!--\s*/g,&nbsp;"</span><span class="string">");&nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;s;&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(typeof(time)&nbsp;==&nbsp;"<span>undefined</span><span class="string">")&nbsp;{</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s&nbsp;=&nbsp;0;</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;}</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;{</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s&nbsp;=&nbsp;time;</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;}</span>&nbsp;</span></li>
    <li class=""><span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;script,&nbsp;add_script,&nbsp;remove_script;</span>&nbsp;</span></li>
    <li class=""><span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(var&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&nbsp;&lt;&nbsp;scripts.length;&nbsp;i++)&nbsp;{</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;add_html&nbsp;=&nbsp;"</span><span>document_buffer&nbsp;+=&nbsp;global_html_pool[</span><span class="string">"&nbsp;+&nbsp;i&nbsp;+&nbsp;"</span><span>];\n</span><span class="string">";</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;add_html&nbsp;+=&nbsp;"</span><span>document.getElementById('</span><span class="string">"&nbsp;+&nbsp;obj_id&nbsp;+&nbsp;"</span><span class="string">').innerHTML&nbsp;=&nbsp;document_buffer;\n";</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;script&nbsp;=&nbsp;document.createElement("script");</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(scripts[i].src)&nbsp;{</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;script.src&nbsp;=&nbsp;scripts[i].src;</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(typeof(global_script_src_pool[script.src])&nbsp;==&nbsp;"undefined")&nbsp;{</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;global_script_src_pool[script.src]&nbsp;=&nbsp;true;</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s&nbsp;+=&nbsp;2000;</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;{</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s&nbsp;+=&nbsp;10;</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;{</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;script.text&nbsp;=&nbsp;scripts[i].text;</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s&nbsp;+=&nbsp;10;</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;script.defer&nbsp;=&nbsp;true;</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;script.type&nbsp;=&nbsp;&nbsp;"text/javascript";</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;script.id&nbsp;=&nbsp;get_script_id();</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;global_script_pool[script.id]&nbsp;=&nbsp;script;</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;add_script&nbsp;=&nbsp;add_html;</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;add_script&nbsp;+=&nbsp;"document.getElementsByTagName('</span><span>head</span><span class="string">').item(0)";&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;add_script&nbsp;+=&nbsp;".appendChild(global_script_pool['<span class="string">"&nbsp;+&nbsp;script.id&nbsp;+&nbsp;"</span><span class="string">']);\n";</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;window.setTimeout(add_script,&nbsp;s);</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;remove_script&nbsp;=&nbsp;"document.getElementsByTagName('</span><span>head</span><span class="string">').item(0)";</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;remove_script&nbsp;+=&nbsp;".removeChild(document.getElementById('</span><span class="string">"&nbsp;+&nbsp;script.id&nbsp;+&nbsp;"</span><span class="string">'));\n";</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;remove_script&nbsp;+=&nbsp;"delete&nbsp;global_script_pool['</span><span class="string">"&nbsp;+&nbsp;script.id&nbsp;+&nbsp;"</span><span class="string">'];\n";</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;window.setTimeout(remove_script,&nbsp;s&nbsp;+&nbsp;10000);</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;}</span>&nbsp;</span></li>
    <li class=""><span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;end_script&nbsp;=&nbsp;"if&nbsp;(document_buffer.match(/&lt;\\/script&gt;/i))&nbsp;{\n";</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;end_script&nbsp;+=&nbsp;"set_innerHTML('</span><span class="string">"&nbsp;+&nbsp;obj_id&nbsp;+&nbsp;"</span><span class="string">',&nbsp;document_buffer,&nbsp;"&nbsp;+&nbsp;s&nbsp;+&nbsp;");\n";</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;end_script&nbsp;+=&nbsp;"}\n";</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;end_script&nbsp;+=&nbsp;"else&nbsp;{\n";</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;end_script&nbsp;+=&nbsp;"document.getElementById('</span><span class="string">"&nbsp;+&nbsp;obj_id&nbsp;+&nbsp;"</span><span>').innerHTML&nbsp;=&nbsp;document_buffer;\n</span><span class="string">";</span>&nbsp;</span></li>
    <li class=""><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;end_script&nbsp;+=&nbsp;"</span><span>innerhtml_lock&nbsp;=&nbsp;</span><span class="keyword">null</span><span>;\n</span><span class="string">";</span>&nbsp;</span></li>
    <li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;end_script&nbsp;+=&nbsp;"</span><span>}";&nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;window.setTimeout(end_script,&nbsp;s);&nbsp;&nbsp;</span></li>
    <li class="alt"><span>}&nbsp;&nbsp;</span></li>
</ol>
</div>
<p>在线DEMO:http://test.coolcode.cn/innerhtml/<br>
JS调用方法:</p>
<div class="codeText">
<div class="codeHead">JavaScript代码</div>
<ol class="dp-c" start="1">
    <li class="alt"><span><span>set_innerHTML(</span><span class="string">'</span></span><span><span class="string">要插入innerhtml的ID名称</span></span><span><span class="string">'</span><span>, '要插入的代码'</span><span>);&nbsp;&nbsp;</span></span></li>
</ol>
</div>
<p><strong>方案2:来自www.ajaxwing.com的<span class="hl-comment">innerHTML简单版<br>
<div class="codeText">
<div class="codeHead">JavaScript代码</div>
<ol class="dp-c" start="1">
    <li class="alt"><span><span class="comment">/*</span>&nbsp;</span></li>
    <li class=""><span><span class="comment">&nbsp;*&nbsp;描述：跨浏览器的设置&nbsp;innerHTML&nbsp;方法</span>&nbsp;</span></li>
    <li class="alt"><span><span class="comment">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;允许插入的&nbsp;HTML&nbsp;代码中包含&nbsp;script&nbsp;和&nbsp;style</span>&nbsp;</span></li>
    <li class=""><span><span class="comment">&nbsp;*&nbsp;作者：kenxu&nbsp;&lt;ken@ajaxwing.com&gt;</span>&nbsp;</span></li>
    <li class="alt"><span><span class="comment">&nbsp;*&nbsp;日期：2006-03-23</span>&nbsp;</span></li>
    <li class=""><span><span class="comment">&nbsp;*&nbsp;参数：</span>&nbsp;</span></li>
    <li class="alt"><span><span class="comment">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;el:&nbsp;合法的&nbsp;DOM&nbsp;树中的节点</span>&nbsp;</span></li>
    <li class=""><span><span class="comment">&nbsp;*&nbsp;&nbsp;&nbsp;&nbsp;htmlCode:&nbsp;合法的&nbsp;HTML&nbsp;代码</span>&nbsp;</span></li>
    <li class="alt"><span><span class="comment">&nbsp;*&nbsp;经测试的浏览器：ie5+,&nbsp;firefox1.5+,&nbsp;opera8.5+</span>&nbsp;</span></li>
    <li class=""><span><span class="comment">&nbsp;*/</span><span>&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span><span class="keyword">var</span><span>&nbsp;setInnerHTML&nbsp;=&nbsp;</span><span class="keyword">function</span><span>&nbsp;(el,&nbsp;htmlCode)&nbsp;{&nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">var</span><span>&nbsp;ua&nbsp;=&nbsp;navigator.userAgent.toLowerCase();&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">if</span><span>&nbsp;(ua.indexOf(</span><span class="string">'msie'</span><span>)&nbsp;&gt;=&nbsp;0&nbsp;&amp;&amp;&nbsp;ua.indexOf(</span><span class="string">'opera'</span><span>)&nbsp;&lt;&nbsp;0)&nbsp;{&nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;htmlCode&nbsp;=&nbsp;<span class="string">'&lt;div&nbsp;style="display:none"&gt;for&nbsp;IE&lt;/div&gt;'</span><span>&nbsp;+&nbsp;htmlCode;&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;htmlCode&nbsp;=&nbsp;htmlCode.replace(/&lt;script([^&gt;]*)&gt;/gi,&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="string">'&lt;script$1&nbsp;defer&gt;'</span><span>);&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;el.innerHTML&nbsp;=&nbsp;htmlCode;&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;el.removeChild(el.firstChild);&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<span class="keyword">else</span><span>&nbsp;{&nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">var</span><span>&nbsp;el_next&nbsp;=&nbsp;el.nextSibling;&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">var</span><span>&nbsp;el_parent&nbsp;=&nbsp;el.parentNode;&nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;el_parent.removeChild(el);&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;el.innerHTML&nbsp;=&nbsp;htmlCode;&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">if</span><span>&nbsp;(el_next)&nbsp;{&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;el_parent.insertBefore(el,&nbsp;el_next)&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<span class="keyword">else</span><span>&nbsp;{&nbsp;&nbsp;</span></span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;el_parent.appendChild(el);&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;</span></li>
    <li class=""><span>}&nbsp; <br>
    </span></li>
</ol>
</div>
</span></strong></p>
<p>调用方法:</p>
<div class="codeText">
<div class="codeHead">JavaScript代码</div>
<ol start="1" class="dp-c">
    <li class="alt"><span><span>setInnerHTML(</span><span class="string">'DOM 树中的节点'</span><span>,&nbsp;</span><span class="string">'要插入的代码'</span><span>);&nbsp;&nbsp;&nbsp;&nbsp;</span></span></li>
</ol>
</div>
<p>简单版充分利用了浏览器自身的特性，执行效率高，兼容性好。<font color="#ff6600">唯一的缺点就是脚本中不能包含 document.write。</font></p>
</div><img src ="http://www.cnitblog.com/shisanlangd/aggbug/37576.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/shisanlangd/" target="_blank">十三郎</a> 2007-12-11 14:51 <a href="http://www.cnitblog.com/shisanlangd/archive/2007/12/11/37576.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title> JavaScript中支持面向对象的基础</title><link>http://www.cnitblog.com/shisanlangd/archive/2007/11/27/36962.html</link><dc:creator>十三郎</dc:creator><author>十三郎</author><pubDate>Tue, 27 Nov 2007 13:06:00 GMT</pubDate><guid>http://www.cnitblog.com/shisanlangd/archive/2007/11/27/36962.html</guid><wfw:comment>http://www.cnitblog.com/shisanlangd/comments/36962.html</wfw:comment><comments>http://www.cnitblog.com/shisanlangd/archive/2007/11/27/36962.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/shisanlangd/comments/commentRss/36962.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/shisanlangd/services/trackbacks/36962.html</trackback:ping><description><![CDATA[<font size="2"><font size="4"><strong>6.1.1&nbsp; 用定义函数的方式定义类</strong></font><br>在面向对象的思想中，最核心的概念之一就是类。一个类表示了具有相似性质的一类事物的抽象，通过实例化一个类，可以获得属于该类的一个实例，即对象。<br>在JavaScript中定义一个类的方法如下：<br>function class1(){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //类成员的定义及构造函数<br>}<br>这里class1既是一个函数也是一个类。可以将它理解为类的构造函数，负责初始化工作。<br><br><font size="4"><strong>6.1.2&nbsp; 使用new操作符获得一个类的实例<br></strong></font>在前面介绍基本对象时，已经用过new操作符，例如：<br>new Date();<br>表示创建一个日期对象，而Date就是表示日期的类，只是这个类是由JavaScript内部提供的，而不是由用户定义的。<br>new操作符不仅对内部类有效，对用户定义的类也同样有效，对于上节定义的class1，也可以用new来获取一个实例：<br>function class1(){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //类成员的定义及构造函数<br>}<br>var obj1=new class1();<br>抛
开类的概念，从代码的形式上来看，class1就是一个函数，那么是不是所有的函数都可以用new来操作呢？是的，在JavaScript中，函数和类就
是一个概念，当对一个函数进行new操作时，就会返回一个对象。如果这个函数中没有初始化类成员，那就会返回一个空的对象。例如：<br>//定义一个hello函数<br>function hello(){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alert("hello");<br>}<br>//通过new一个函数获得一个对象<br>var obj=new hello();<br>alert(typeof(obj));<br>从运行结果看，执行了hello函数，同时obj也获得了一个对象的引用。当new一个函数时，这个函数就是所代表类的构造函数，其中的代码被看作为了初始化一个对象。用于表示类的函数也称为构造器。<br><br><font size="4"><strong>6.1.3&nbsp; 使用方括号（[ ]）引用对象的属性和方法<br></strong></font>在JavaScript中，每个对象可以看作是多个属性（方法）的集合，引用一个属性（方法）很简单，如：<br>对象名.属性（方法）名<br>还可以用方括号的形式来引用：<br>对象名["属性（方法）名"]<br>注意，这里的方法名和属性名是一个字符串，不是原先点（? ）号后面的标识符，例如：<br>var arr=new Array();<br>//为数组添加一个元素<br>arr["push"]("abc");<br>//获得数组的长度<br>var len=arr["length"];<br>//输出数组的长度<br>alert(len);<br><img src="http://book.csdn.net/bookfiles/33/6/image6.1.jpg"><br>图6.1显示了执行的结果。<br>由此可见，上面的代码等价于：<br>var arr=new Array();<br>//为数组添加一个元素<br>arr.push("abc");<br>//获得数组的长度<br>var len=arr.length;<br>//输出数组的长度<br>alert(len);<br>这种引用属性（方法）的方式和数组类似，体现了JavaScript对象就是一组属性（方法）的集合这个性质。<br>这种用法适合不确定具体要引用哪个属性（方法）的情况，例如：一个对象用于表示用户资料，用一个字符串表示要使用的那个属性，就可以用这种方式来引用：<br>&lt;script language="JavaScript" type="text/javascript"&gt;<br>&lt;!--<br>//定义了一个User类，包括两个成员age和sex，并指定了初始值。<br>function User(){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; this.age=21;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; this.sex="male";<br>}<br>//创建user对象<br>var user=new User();<br>//根据下拉列表框显示用户的信息<br>function show(slt){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(slt.selectedIndex!=0){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alert(user[slt.value]);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>}<br>//--&gt;<br>&lt;/script&gt;<br>&lt;!--下拉列表框用于选择用户信息--&gt;<br>&lt;select onchange="show(this)"&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;option&gt;请选择需要查看的信息：&lt;/option&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;option value="age"&gt;年龄&lt;/option&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;option value="sex"&gt;性别&lt;/option&gt;<br>&lt;/select&gt;<br>在这段代码中，使用一个下拉列表框让用户选择查看哪个信息，每个选项的value就表示用户对象的属性名称。这时如果不采用方括号的形式，可使用如下代码来实现：<br>function show(slt){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(slt.selectedIndex!=0){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(slt.value=="age")alert(user.age);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(slt.value=="sex")alert(user.sex);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>}<br>而使用方括号语法，则只需写为：<br>alert(user[slt.value]);<br>方括号语法像一种参数语法，可用一个变量来表示引用对象的哪个属性。如果不采用这种方法，又不想用条件判断，可以使用eval函数：<br>alert(eval("user."+slt.value));<br>这里利用eval函数的性质，执行了一段动态生成的代码，并返回了结果。<br>实际上，在前面讲述document的集合对象时，就有类似方括号的用法，比如引用页面中一个名为&#8220;theForm&#8221;的表单对象，以前的用法是：<br>document.forms["theForm"];<br>也可以改写为：<br>document.forms.theForm;<br>forms对象是一个内部对象，和自定义对象不同的是，它还可以用索引来引用其中的一个属性。<br><br><font size="4"><strong>6.1.4&nbsp; 动态添加、修改、删除对象的属性和方法<br></strong></font>上一节介绍了如何引用一个对象的属性和方法，现在介绍如何为一个对象添加、修改或者删除属性和方法。<br>其
他语言中，对象一旦生成，就不可更改，要为一个对象添加、修改成员必须要在对应的类中修改，并重新实例化，程序也必须重新编译。JavaScript提供
了灵活的机制来修改对象的行为，可以动态添加、修改、删除属性和方法。例如：先用类Object来创建一个空对象user：<br>var user=new Object();<br><strong>1．添加属性</strong><br>这时user对象没有任何属性和方法，可以为它动态的添加属性，例如：<br>user.name="jack";<br>user.age=21;<br>user.sex="male";<br>通过上述语句，user对象具有了三个属性：name、age和sex。下面输出这三个语句：<br>alert(user.name);<br>alert(user.age);<br>alert(user.sex);<br>由代码运行效果可知，三个属性已经完全属于user对象了。<br><strong>2．添加方法</strong><br>添加方法的过程和添加属性类似：<br>user.alert=function(){<br>&nbsp;&nbsp;&nbsp;&nbsp; alert("my name is:"+this.name);<br>}<br>这就为user对象添加了一个方法&#8220;alert&#8221;，通过执行它，弹出一个对话框显示自己的名字：<br>user.alert();<br><img src="http://book.csdn.net/bookfiles/33/6/image6.2.jpg"><br>图6.2显示了执行的结果。<br><strong>3．修改属性和方法</strong><br>修改一个属性和方法的过程就是用新的属性替换旧的属性，例如：<br>user.name="tom";<br>user.alert=function(){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alert("hello,"+this.name);<br>}<br>这样就修改了user对象name属性的值和alert方法，它从显示&#8220;my name is&#8221;对话框变为了显示&#8220;hello&#8221;对话框。<br><strong>4．删除属性和方法</strong><br>删除一个属性和方法的过程也很简单，就是将其置为undefined：<br>user.name=undefined;<br>user.alert=undefined;<br>这样就删除了name属性和alert方法。<br>在添加、修改或者删除属性时，和引用属性相同，也可以采用方括号（[]）语法：<br>user["name"]="tom";<br>使用这种方式还有一个特点，可以使用非标识符字符串作为属性名称，例如标识符中不允许以数字开头或者出现空格，但在方括号（[]）语法中却可以使用：<br>user["my name"]="tom";<br>需要注意，在使用这种非标识符作为名称的属性时，仍然要用方括号语法来引用：<br>alert(user["my name"]);<br>而不能写为：<br>alert(user.my name);<br>事实上，JavaScript中的每个对象都是动态可变的，这给编程带来了灵活性，也和其他语言产生了区别。<br><br><font size="4"><strong>6.1.5&nbsp; 使用大括号（{ }）语法创建无类型对象<br></strong></font>传统的面向对象语言中，每个对象都会对应到一个类。上一节讲this指针时提到，JavaScript中的对象其实就是属性（方法）的一个集合，并没有严格意义上类的概念。所以它提供了一种简单的方式来创建对象，即大括号（{}）语法：<br>{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; property1:statement,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; property2:statement2,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#8230;,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; propertyN:statmentN<br>}<br>通过大括号括住多个属性或方法及其定义（这些属性或方法用逗号隔开），来实现对象的定义，这段代码就直接定义个了具有n个属性或方法的对象，其中属性名和其定义之间用冒号（:）隔开。例如：<br>&lt;script language="JavaScript" type="text/javascript"&gt;<br>&lt;!--<br>var obj={};&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//定义了一个空对象<br>var user={<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; name:"jack",&nbsp;&nbsp;&nbsp;//定义了name属性，初始化为jack<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; favoriteColor:["red","green","black","white"],//定义了颜色喜好数组<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; hello:function(){&nbsp;&nbsp;//定义了方法hello<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alert("hello,"+this.name);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; },<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sex:"male"&nbsp;&nbsp;&nbsp;&nbsp;//定义了性别属性sex，初始化为male<br>}</font>
<p><font size="2">//调用user对象的方法hello<br>user.hello();<br>//--&gt;<br>&lt;/script&gt;<br>第一行定义了一个无类型对象obj，它等价于：<br>var obj=new Object();<br>接着定义了一个对象user及其属性和方法。注意，除了最后一个属性（方法）定义，其他的必须以逗号（,）结尾。其实，使用动态增减属性的方法也可以定义一个完全相同的user对象，读者可使用前面介绍的方法实现。<br>使用这种方式来定义对象，还可以使用字符串作为属性（方法）名，例如：<br>var obj={"001":"abc"}<br>这就给对象obj定义了一个属性&#8220;001&#8221;，这并不是一个有效的标识符，所以要引用这个属性必须使用方括号语法：<br>obj["001"];<br>由此可见，无类型对象提供了一种创建对象的简便方式，它以紧凑和清晰的语法将一个对象体现为一个完整的实体。而且也有利于减少代码的体积，这对JavaScript代码来说尤其重要，减少体积意味着提高了访问速度。<br><br><strong><font size="4">6.1.6&nbsp; prototype原型对象<br></font></strong>prototype
对象是实现面向对象的一个重要机制。每个函数（function）其实也是一个对象，它们对应的类是&#8220;Function&#8221;，但它们身份特殊，每个函数对象
都具有一个子对象prototype。即prototype表示了该函数的原型，而函数也是类，prototype就是表示了一个类的成员的集合。当通过
new来获取一个类的对象时，prototype对象的成员都会成为实例化对象的成员。<br>既然prototype是一个对象，可以使用前面两节介绍的方法对其进行动态的修改，这里先给出一个简单的例子：<br>//定义了一个空类<br>function class1(){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //empty<br>}<br>//对类的prototype对象进行修改，增加方法method<br>class1.prototype.method=function(){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alert("it's a test method");<br>}<br>//创建类class1的实例<br>var obj1=new class1();<br>//调用obj1的方法method<br>obj1.method();<br><img src="http://book.csdn.net/bookfiles/33/6/image6.3.jpg"><br>图6.3显示了执行的结果。</font></p><img src ="http://www.cnitblog.com/shisanlangd/aggbug/36962.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/shisanlangd/" target="_blank">十三郎</a> 2007-11-27 21:06 <a href="http://www.cnitblog.com/shisanlangd/archive/2007/11/27/36962.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JavaScript中的Node相关内容介绍</title><link>http://www.cnitblog.com/shisanlangd/archive/2007/10/25/35303.html</link><dc:creator>十三郎</dc:creator><author>十三郎</author><pubDate>Thu, 25 Oct 2007 02:04:00 GMT</pubDate><guid>http://www.cnitblog.com/shisanlangd/archive/2007/10/25/35303.html</guid><wfw:comment>http://www.cnitblog.com/shisanlangd/comments/35303.html</wfw:comment><comments>http://www.cnitblog.com/shisanlangd/archive/2007/10/25/35303.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/shisanlangd/comments/commentRss/35303.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/shisanlangd/services/trackbacks/35303.html</trackback:ping><description><![CDATA[Node往往被翻译为节点，在一个对象（可以简单的理解为是HTML页面中），一个属性<font color="#ff0000">name="aaa"</font>可以是一个节点，一个<font color="#ff0000">&lt; div id="aaa"&gt;&#8230;&#8230;&lt; /div&gt;</font>也可以是一个节点，在<font color="#ff0000">&lt; body&gt;&#8230;&#8230;&lt; /body&gt;</font>中的，也是一个大大的节点。下面是一些有关Node的属性和方法，并没有包含部分不兼容IE和FF内容的讲解。
<p>Node的属性介绍：</p>
<p>nodeType：显示节点的类型<br>
nodeName：显示节点的名称<br>
nodeValue：显示节点的值<br>
attributes：获取一个属性节点<br>
firstChild：表示某一节点的第一个节点<br>
lastChild：表示某一节点的最后一个子节点<br>
childNodes：表示所在节点的所有子节点<br>
parentNode：表示所在节点的父节点<br>
nextSibling：紧挨着当前节点的下一个节点<br>
previousSibling：紧挨着当前节点的上一个节点<br>
ownerDocument：（不知）</p>
<p>Node有各种各样的节点，我们先花一些时间认识他们，同时一并了解nodeType，nodeName和nodeValue属性：<br>
名称：元素节点<br>
nodeType：ELEMENT_NODE<br>
nodeType值：1<br>
nodeName：元素标记名<br>
nodeValue：null</p>
<div class="hl-surround">
<div class="hl-main"><span style="color: gray;">&lt;</span><span style="color: blue;">body</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: blue;">div</span><span style="color: gray;"> </span><span style="color: blue;">id</span><span style="color: gray;"> = </span><span style="color: #8b0000;">"</span><span style="color: red;">t</span><span style="color: #8b0000;">"</span><span style="color: gray;"> &gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">div</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">body&gt;<br>
&lt;script&gt;<br>
var d = document.getElementById("t");<br>
document.write(d.nodeType);<br>
document.write(d.nodeName);<br>
document.write(d.nodeValue);<br>
</span><span style="color: #8b0000;">//</span><span style="color: red;">显示 1 DIV null<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">script</span><span style="color: gray;">&gt;</span></div>
</div>
<p>名称：属性节点<br>
nodeType：ATTRIBUTE_NODE<br>
nodeType值：2<br>
nodeName：属性名<br>
nodeValue：属性值</p>
<div class="hl-surround">
<div class="hl-main"><span style="color: gray;">&lt;</span><span style="color: blue;">body</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: blue;">div</span><span style="color: gray;"> </span><span style="color: blue;">id</span><span style="color: gray;"> = </span><span style="color: #8b0000;">"</span><span style="color: red;">t</span><span style="color: #8b0000;">"</span><span style="color: gray;"> </span><span style="color: blue;">name</span><span style="color: gray;">=</span><span style="color: #8b0000;">"</span><span style="color: red;">aaa</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">div</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">body&gt;<br>
&lt;script&gt;<br>
var d = document.getElementById("t").getAttributeNode("name");<br>
document.write(d.nodeType);<br>
document.write(d.nodeName);<br>
document.write(d.nodeValue);<br>
</span><span style="color: #8b0000;">//</span><span style="color: red;">显示 2 name aaa<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">script</span><span style="color: gray;">&gt;</span></div>
</div>
<p>名称：文本节点<br>
nodeType：TEXT_NODE<br>
nodeType值：3<br>
nodeName：#text<br>
nodeValue：文本内容</p>
<div class="hl-surround">
<div class="hl-main"><span style="color: gray;">&lt;</span><span style="color: blue;">body</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: blue;">div</span><span style="color: gray;"> </span><span style="color: blue;">id</span><span style="color: gray;"> = </span><span style="color: #8b0000;">"</span><span style="color: red;">t</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;</span><span style="color: blue;">bbb</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">div&gt;<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">body</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: blue;">script</span><span style="color: gray;">&gt;<br>
</span><span style="color: green;">var</span><span style="color: gray;"> </span><span style="color: blue;">d</span><span style="color: gray;"> = </span><span style="color: teal;">document</span><span style="color: gray;">.</span><span style="color: blue;">getElementById</span><span style="color: olive;">(</span><span style="color: #8b0000;">"</span><span style="color: red;">t</span><span style="color: #8b0000;">"</span><span style="color: olive;">)</span><span style="color: gray;">.</span><span style="color: blue;">firstChild</span><span style="color: gray;">;<br>
</span><span style="color: teal;">document</span><span style="color: gray;">.</span><span style="color: blue;">write</span><span style="color: olive;">(</span><span style="color: blue;">d</span><span style="color: gray;">.</span><span style="color: blue;">nodeType</span><span style="color: olive;">)</span><span style="color: gray;">;<br>
</span><span style="color: teal;">document</span><span style="color: gray;">.</span><span style="color: blue;">write</span><span style="color: olive;">(</span><span style="color: blue;">d</span><span style="color: gray;">.</span><span style="color: blue;">nodeName</span><span style="color: olive;">)</span><span style="color: gray;">;<br>
</span><span style="color: teal;">document</span><span style="color: gray;">.</span><span style="color: blue;">write</span><span style="color: olive;">(</span><span style="color: blue;">d</span><span style="color: gray;">.</span><span style="color: blue;">nodeValue</span><span style="color: olive;">)</span><span style="color: gray;">;<br>
</span><span style="color: #ffa500;">//显示 3 #text bbb </span><span style="color: gray;"><br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">script&gt;</span></div>
</div>
<p>名称：CDATA文本节点（XML中传递文本的格式）<br>
nodeType：CDATA_SECTION_NODE<br>
nodeType值：4<br>
nodeName：#cdata-section<br>
nodeValue：CDATA文本内容</p>
<p>（作者省略8个属性，需技术补充）</p>
<p>attributes属性，直接获取一个属性节点，注意这里要使用[]，保持IE和FF的兼容性。</p>
<div class="hl-surround">
<div class="hl-main"><span style="color: gray;">&lt;</span><span style="color: blue;">body</span><span style="color: gray;"> </span><span style="color: blue;">name</span><span style="color: gray;">=</span><span style="color: #8b0000;">"</span><span style="color: red;">ddd</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: blue;">div</span><span style="color: gray;"> </span><span style="color: blue;">id</span><span style="color: gray;"> = </span><span style="color: #8b0000;">"</span><span style="color: red;">t</span><span style="color: #8b0000;">"</span><span style="color: gray;"> </span><span style="color: blue;">name</span><span style="color: gray;"> = </span><span style="color: #8b0000;">"</span><span style="color: red;">aaa</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">aaa</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;span&gt;bbb&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">span</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">ccc</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">div</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">body&gt;<br>
&lt;script&gt;<br>
var d = document.getElementById("t").attributes["name"];<br>
document.write(d.name);<br>
document.write(d.value);<br>
</span><span style="color: #8b0000;">//</span><span style="color: red;">显示 name aaa<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">script</span><span style="color: gray;">&gt;</span></div>
</div>
<p>firstChild和lastChild属性，表示某一节点的第一个和最后一个子节点：</p>
<div class="hl-surround">
<div class="hl-main"><span style="color: gray;">&lt;</span><span style="color: blue;">body</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: blue;">div</span><span style="color: gray;"> </span><span style="color: blue;">id</span><span style="color: gray;"> = </span><span style="color: #8b0000;">"</span><span style="color: red;">t</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">aaa</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;span&gt;bbb&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">span</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">ccc</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">div</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">body&gt;<br>
&lt;script&gt;<br>
var d = document.getElementById("t");<br>
document.write(d.firstChild.innerHTML);<br>
document.write(d.lastChild.innerHTML);<br>
</span><span style="color: #8b0000;">//</span><span style="color: red;">显示 aaa ccc<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">script</span><span style="color: gray;">&gt;</span></div>
</div>
<p>childNodes和parentNode属性，表示所在节点的所有子节点和所在节点的父节点，这里的childNodes注意是一个数组：</p>
<div class="hl-surround">
<div class="hl-main"><span style="color: gray;">&lt;</span><span style="color: blue;">body</span><span style="color: gray;"> </span><span style="color: blue;">name</span><span style="color: gray;">=</span><span style="color: #8b0000;">"</span><span style="color: red;">ddd</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: blue;">div</span><span style="color: gray;"> </span><span style="color: blue;">id</span><span style="color: gray;"> = </span><span style="color: #8b0000;">"</span><span style="color: red;">t</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">aaa</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;span&gt;bbb&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">span</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">ccc</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">div</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">body&gt;<br>
&lt;script&gt;<br>
var d = document.getElementById("t");<br>
document.write(d.childNodes[1].innerHTML);<br>
document.write(d.parentNode.getAttribute("name"));<br>
</span><span style="color: #8b0000;">//</span><span style="color: red;">显示 bbb ddd<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">script</span><span style="color: gray;">&gt;</span></div>
</div>
<p>nextSibling和previousSibling属性，分别表示在parentNode的childNodes[]数组中，紧挨着当前节点的上一个和下一个节点：</p>
<div class="hl-surround">
<div class="hl-main"><span style="color: gray;">&lt;</span><span style="color: blue;">body</span><span style="color: gray;"> </span><span style="color: blue;">name</span><span style="color: gray;">=</span><span style="color: #8b0000;">"</span><span style="color: red;">ddd</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: blue;">div</span><span style="color: gray;"> </span><span style="color: blue;">id</span><span style="color: gray;"> = </span><span style="color: #8b0000;">"</span><span style="color: red;">t</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">aaa</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;span&gt;bbb&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">span</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">ccc</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">div</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">body&gt;<br>
&lt;script&gt;<br>
var d = document.getElementById("t").childNodes[1];<br>
document.write(d.nextSibling.innerHTML);<br>
document.write(d.previousSibling.innerHTML);<br>
</span><span style="color: #8b0000;">//</span><span style="color: red;">显示 ccc aaa<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">script</span><span style="color: gray;">&gt;</span></div>
</div>
<p>ownerDocument属性（不知如何使用）</p>
<p>Node的方法介绍：</p>
<p>hasChildNodes()：判定一个节点是否有子节点<br>
removeChild()：去除一个节点<br>
appendChild()：添加一个节点<br>
replaceChild()：替换一个节点<br>
insertBefore()：指定节点位置插入一个节点<br>
cloneNode()：复制一个节点<br>
normalize()：（不知）</p>
<p>hasChildNodes()方法：判定一个节点是否有子节点，有返回true，没有返回false</p>
<div class="hl-surround">
<div class="hl-main"><span style="color: gray;">&lt;</span><span style="color: blue;">body</span><span style="color: gray;"> </span><span style="color: blue;">name</span><span style="color: gray;">=</span><span style="color: #8b0000;">"</span><span style="color: red;">ddd</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: blue;">div</span><span style="color: gray;"> </span><span style="color: blue;">id</span><span style="color: gray;"> = </span><span style="color: #8b0000;">"</span><span style="color: red;">t</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">aaa</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;span&gt;bbb&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">span</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">ccc</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">div</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: blue;">div</span><span style="color: gray;"> </span><span style="color: blue;">id</span><span style="color: gray;"> = </span><span style="color: #8b0000;">"</span><span style="color: red;">m</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">div&gt;<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">body</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: blue;">script</span><span style="color: gray;">&gt;<br>
</span><span style="color: blue;">alert</span><span style="color: olive;">(</span><span style="color: teal;">document</span><span style="color: gray;">.</span><span style="color: blue;">getElementById</span><span style="color: olive;">(</span><span style="color: #8b0000;">"</span><span style="color: red;">t</span><span style="color: #8b0000;">"</span><span style="color: olive;">)</span><span style="color: gray;">.</span><span style="color: blue;">hasChildNodes</span><span style="color: olive;">())</span><span style="color: gray;">;<br>
</span><span style="color: blue;">alert</span><span style="color: olive;">(</span><span style="color: teal;">document</span><span style="color: gray;">.</span><span style="color: blue;">getElementById</span><span style="color: olive;">(</span><span style="color: #8b0000;">"</span><span style="color: red;">m</span><span style="color: #8b0000;">"</span><span style="color: olive;">)</span><span style="color: gray;">.</span><span style="color: blue;">hasChildNodes</span><span style="color: olive;">())</span><span style="color: gray;">;<br>
</span><span style="color: #ffa500;">// 第一个true，第二个false</span><span style="color: gray;"><br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">script&gt;</span></div>
</div>
<p>removeChild()方法：去除一个节点</p>
<div class="hl-surround">
<div class="hl-main"><span style="color: gray;">&lt;</span><span style="color: blue;">body</span><span style="color: gray;"> </span><span style="color: blue;">name</span><span style="color: gray;">=</span><span style="color: #8b0000;">"</span><span style="color: red;">ddd</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: blue;">div</span><span style="color: gray;"> </span><span style="color: blue;">id</span><span style="color: gray;"> = </span><span style="color: #8b0000;">"</span><span style="color: red;">t</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">aaa</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;span&gt;bbb&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">span</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">ccc</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">div</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">body&gt;<br>
&lt;script&gt;<br>
var d = document.getElementById("t").firstChild;<br>
document.getElementById("t").removeChild(d);<br>
</span><span style="color: #8b0000;">//</span><span style="color: red;"> &lt;span&gt;aaa&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">span</span><span style="color: gray;">&gt;被去除<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">script&gt;</span></div>
</div>
<p>appendChild()方法：添加一个节点，如果文档树中已经存在该节点，则将它删除，然后在新位置插入。</p>
<div class="hl-surround">
<div class="hl-main"><span style="color: gray;">&lt;</span><span style="color: blue;">body</span><span style="color: gray;"> </span><span style="color: blue;">name</span><span style="color: gray;">=</span><span style="color: #8b0000;">"</span><span style="color: red;">ddd</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: blue;">div</span><span style="color: gray;"> </span><span style="color: blue;">id</span><span style="color: gray;"> = </span><span style="color: #8b0000;">"</span><span style="color: red;">t</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">aaa</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;span&gt;bbb&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">span</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">ccc</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">div</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">body&gt;<br>
&lt;script&gt;<br>
var d = document.getElementById("t").firstChild;<br>
document.getElementById("t").appendChild(d);<br>
</span><span style="color: #8b0000;">//</span><span style="color: red;"> &lt;span&gt;aaa&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">span</span><span style="color: gray;">&gt;成了最后一个节点<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">script&gt;</span></div>
</div>
<p>replaceChild()方法：从文档树中删除（并返回）指定的子节点，用另一个节点来替换它。</p>
<div class="hl-surround">
<div class="hl-main"><span style="color: gray;">&lt;</span><span style="color: blue;">body</span><span style="color: gray;"> </span><span style="color: blue;">name</span><span style="color: gray;">=</span><span style="color: #8b0000;">"</span><span style="color: red;">ddd</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: blue;">div</span><span style="color: gray;"> </span><span style="color: blue;">id</span><span style="color: gray;"> = </span><span style="color: #8b0000;">"</span><span style="color: red;">t</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">aaa</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;span&gt;bbb&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">span</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">ccc</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">div</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">body&gt;<br>
&lt;script&gt;<br>
var newd = document.createElement("span");<br>
newd.innerHTML = "eee";<br>
var oldd = document.getElementById("t").lastChild;<br>
document.getElementById("t").replaceChild(newd,oldd);<br>
</span><span style="color: #8b0000;">//</span><span style="color: red;"> 最后一项成了 eee<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">script</span><span style="color: gray;">&gt;</span></div>
</div>
<p>insertBefore()方法：在指定节点的前面插入一个节点，如果已经存在，则删除原来的，然后在新位置插入</p>
<div class="hl-surround">
<div class="hl-main"><span style="color: gray;">&lt;</span><span style="color: blue;">body</span><span style="color: gray;"> </span><span style="color: blue;">name</span><span style="color: gray;">=</span><span style="color: #8b0000;">"</span><span style="color: red;">ddd</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: blue;">div</span><span style="color: gray;"> </span><span style="color: blue;">id</span><span style="color: gray;"> = </span><span style="color: #8b0000;">"</span><span style="color: red;">t</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">aaa</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;span&gt;bbb&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">span</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">ccc</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">div</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">body&gt;<br>
&lt;script&gt;<br>
var newd = document.createElement("span");<br>
newd.innerHTML = "eee";<br>
var where = document.getElementById("t").lastChild;<br>
document.getElementById("t").insertBefore(newd,where);<br>
</span><span style="color: #8b0000;">//</span><span style="color: red;"> 在最后一项的前面多了一项 eee<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">script</span><span style="color: gray;">&gt;</span></div>
</div>
<p>cloneNode()方法：复制一个节点，该方法有一个参数，true表示同时复制所有的子节点，false表示近复制当前节点</p>
<div class="hl-surround">
<div class="hl-main"><span style="color: gray;">&lt;</span><span style="color: blue;">body</span><span style="color: gray;"> </span><span style="color: blue;">name</span><span style="color: gray;">=</span><span style="color: #8b0000;">"</span><span style="color: red;">ddd</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: blue;">div</span><span style="color: gray;"> </span><span style="color: blue;">id</span><span style="color: gray;"> = </span><span style="color: #8b0000;">"</span><span style="color: red;">t</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">aaa</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;span&gt;bbb&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">span</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">span</span><span style="color: gray;">&gt;</span><span style="color: blue;">ccc</span><span style="color: gray;">&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">span&gt;&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">div</span><span style="color: gray;">&gt;&lt;</span><span style="color: blue;">div</span><span style="color: gray;"> </span><span style="color: blue;">id</span><span style="color: gray;"> = </span><span style="color: #8b0000;">"</span><span style="color: red;">m</span><span style="color: #8b0000;">"</span><span style="color: gray;">&gt;&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">div&gt;<br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: blue;">body</span><span style="color: gray;">&gt;<br>
&lt;</span><span style="color: blue;">script</span><span style="color: gray;">&gt;<br>
</span><span style="color: green;">var</span><span style="color: gray;"> </span><span style="color: blue;">what</span><span style="color: gray;"> = </span><span style="color: teal;">document</span><span style="color: gray;">.</span><span style="color: blue;">getElementById</span><span style="color: olive;">(</span><span style="color: #8b0000;">"</span><span style="color: red;">t</span><span style="color: #8b0000;">"</span><span style="color: olive;">)</span><span style="color: gray;">.</span><span style="color: blue;">cloneNode</span><span style="color: olive;">(</span><span style="color: green;">false</span><span style="color: olive;">)</span><span style="color: gray;">.</span><span style="color: blue;">innerHTML</span><span style="color: gray;">;<br>
</span><span style="color: teal;">document</span><span style="color: gray;">.</span><span style="color: blue;">getElementById</span><span style="color: olive;">(</span><span style="color: #8b0000;">"</span><span style="color: red;">m</span><span style="color: #8b0000;">"</span><span style="color: olive;">)</span><span style="color: gray;">.</span><span style="color: blue;">innerHTML</span><span style="color: gray;"> = </span><span style="color: blue;">what</span><span style="color: gray;">;<br>
</span><span style="color: #ffa500;">// 增加了一个aaabbbccc</span><span style="color: gray;"><br>
&lt;</span><span style="color: #8b0000;">/</span><span style="color: red;">script&gt;</span></div>
</div>
<img src="http://www.zj-blog.com/skins/common/images/From.gif" style="margin: 0px 2px -4px 0px;" alt=""><strong>文章来自:</strong> <a href="http://itdoor.bokee.com/index.html" target="_blank">JavaScript Sky</a><br> <img src ="http://www.cnitblog.com/shisanlangd/aggbug/35303.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/shisanlangd/" target="_blank">十三郎</a> 2007-10-25 10:04 <a href="http://www.cnitblog.com/shisanlangd/archive/2007/10/25/35303.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>