<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet href='http://feed.feedsky.com/styles/temp01.xsl' type='text/xsl' ?><!--这是一个由Feedsy提供技术支持的Feed，为了提高读者阅读的体验，以及满足用户美化自己Feed的需要，我们设计了多种精美的Feed模板，提供给大家选择，所有最终呈现出来的样式，皆由用户自愿选择使用，未经许可，任何团体和个人，请不要擅自修改样式或者盗用，这是对于用户选择权的尊重。--><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:fs="http://www.feedsky.com/namespace/feed" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link href="http://feed.feedsky.com/anjing" type="application/rss+xml" rel="self"></atom:link><fs:self_link href="http://feed.feedsky.com/anjing" type="application/rss+xml"></fs:self_link><lastBuildDate>Mon, 01 Nov 2010 09:08:41 GMT</lastBuildDate><title>Fang leo</title><description>Fang leo'blog -- 我们的幸福在延续...</description><image><url>http://www.feedsky.com/feed/anjing/sc/gif</url><title>Fang leo</title><link>http://www.fangleo.cn</link></image><link>http://www.fangleo.cn</link><sy:updatePeriod>hourly</sy:updatePeriod><sy:updateFrequency>1</sy:updateFrequency><atom:link rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/FangLeo"></atom:link><feedburner:info uri="fangleo"></feedburner:info><atom:link rel="hub" href="http://pubsubhubbub.appspot.com/"></atom:link><language>en</language><pubDate>Mon, 01 Nov 2010 09:08:41 GMT</pubDate><item><title>修改系统时间对js函数setInterval和setTimeOut的影响</title><link>http://feedproxy.google.com/~r/FangLeo/~3/EsI8AdTvk0k/</link><content:encoded>&lt;p&gt;     由于对同一时间的需要，我用了一个临时的解决方案。在用于请求数据的时候，到服务器请求当前的服务器时间，减掉通信时间的50%和当前系统时间作减存为变量T1为间隔，然后系统内建始终，用setInteval，每次去当前系统时间加T1，来算服务器时间。见过多浏览器测试，4小时内误差不超过1分钟。&lt;br /&gt;
     但问题来了 ，用户是会修改他自己的系统时间的，所以我加了一个方法，用来计算上一秒的系统时间和这一秒系统时间的差额，如果这个差额超过1000毫秒，那么我重新请求服务器时间，修正当前变量T1.&lt;br /&gt;
     貌似解决了问题，在对时间精度要求不是太高的情况下能满足所有的时间需求（由于网络的延迟，非常精确是无法做到的）。在实际的应用过程中发现，当我修改时间是向后修改，就是修改的时间比当前时间大或者晚，这个内建时钟误差不大，还能正常运转，但是一旦我向前修改时间，这个时钟就停止。&lt;br /&gt;
     是的，停止了。经过一番检查，发现向后修改后，setInterval失效了（firefox3.6）！&lt;span id=&quot;more-1316&quot;&gt;&lt;/span&gt;&lt;br /&gt;
     简单检查后，发现setTimeout正常的。而chrome下面更好玩，居然没有影响。google了一下，找到&lt;a href=&quot;http://varnow.org/?p=167&quot;&gt;一片文章&lt;/a&gt;（此文同样是探讨服务器时间的问题），博主在文章末尾也正好提到了这样的问题。&lt;br /&gt;
     针对时间保持的问题，那位博主用了input来存储，Leo曾经想过用cookie来保存，但精度的需要加上不是所有的页面都需要这个时间，所以就存储在变量里，这样每次打开页面请求为最新的时间，把部分压力给了服务器。&lt;br /&gt;
     ok，说上面setInterval的问题，我的解决方法是用一个对象timer来处理,部分代码：&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;&amp;lt;script type=&amp;quot;text/javascript&amp;quot; language=&amp;quot;javascript&amp;quot;&amp;gt;&lt;/li&gt;
&lt;li&gt;var _his = new Date().getTime()&lt;/li&gt;
&lt;li&gt;var timer = {&lt;/li&gt;
&lt;li&gt;	process:null,&lt;/li&gt;
&lt;li&gt;	start:function(){&lt;/li&gt;
&lt;li&gt;		this.process= setInterval(&lt;/li&gt;
&lt;li&gt;			function(){&lt;/li&gt;
&lt;li&gt;				var _now = new Date().getTime();&lt;/li&gt;
&lt;li&gt;				if( Math.abs(_now - _his) &amp;lt; 1000){&lt;/li&gt;
&lt;li&gt;					_his = _now;&lt;/li&gt;
&lt;li&gt;				}else{&lt;/li&gt;
&lt;li&gt;					_his = _now;&lt;/li&gt;
&lt;li&gt;					loadServiceTime(true);&lt;/li&gt;
&lt;li&gt;				}&lt;/li&gt;
&lt;li&gt;			},1000);&lt;/li&gt;
&lt;li&gt;	},&lt;/li&gt;
&lt;li&gt;	clear:function(){&lt;/li&gt;
&lt;li&gt;		var _this = this;&lt;/li&gt;
&lt;li&gt;		clearInterval(_this.process);&lt;/li&gt;
&lt;li&gt;	}&lt;/li&gt;
&lt;li&gt;}&lt;/li&gt;
&lt;li&gt;timer.start();&lt;/li&gt;
&lt;li&gt;timer.clear();&lt;/li&gt;
&lt;li&gt;&amp;lt;/script&amp;gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;这样，初始化是用timer.start();在loadServiceTime方法开始调用timer.clear();，请求结束后继续start(),测试有效！&lt;/p&gt;
&lt;h2  class=&quot;related_post_title&quot;&gt;这些文章或许你也喜欢...&lt;/h2&gt;&lt;ul class=&quot;related_post&quot;&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=357&quot; title=&quot;微软出品的增强型&amp;quot;日期和时间&amp;quot;&quot;&gt;微软出品的增强型&amp;quot;日期和时间&amp;quot;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=962&quot; title=&quot;性能提升 jQuery 1.3.2 版本发布&quot;&gt;性能提升 jQuery 1.3.2 版本发布&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=674&quot; title=&quot;Skype中文官网6屏切换JS代码分析&quot;&gt;Skype中文官网6屏切换JS代码分析&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=349&quot; title=&quot;面试成功法则心态全攻略&quot;&gt;面试成功法则心态全攻略&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=33&quot; title=&quot;常用的几种 Javascript Ajax Tabs&quot;&gt;常用的几种 Javascript Ajax Tabs&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=396&quot; title=&quot;能够提高英文阅读水平的网站[值得收藏]&quot;&gt;能够提高英文阅读水平的网站[值得收藏]&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/--7lmMGxZBvTcmfFdIa5DRm1CNw/0/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/--7lmMGxZBvTcmfFdIa5DRm1CNw/0/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/--7lmMGxZBvTcmfFdIa5DRm1CNw/1/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/--7lmMGxZBvTcmfFdIa5DRm1CNw/1/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/FangLeo/~4/EsI8AdTvk0k&quot; height=&quot;1&quot; width=&quot;1&quot;/&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/475622271/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/EsI8AdTvk0k/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622271/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622271/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.fangleo.cn/?feed=rss2&amp;p=1316</wfw:commentRss><slash:comments>0</slash:comments><feedburner:origLink>http://www.fangleo.cn/?p=1316</feedburner:origLink><description>由于对同一时间的需要，我用了一个临时的解决方案。在用于请求数据的时候，到服务器请求当前的服务器时间，减掉通信时间的50%和当前系统时间作减存为变量T1为间隔，然后系统内建始...&lt;img src=&quot;http://www1.feedsky.com/t1/475622271/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/EsI8AdTvk0k/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622271/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622271/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>Js+ajax</category><pubDate>Mon, 01 Nov 2010 17:08:41 +0800</pubDate><author>Leo</author><comments>http://www.fangleo.cn/?p=1316#comments</comments><guid isPermaLink="false">http://www.fangleo.cn/?p=1316</guid><dc:creator>Leo</dc:creator><fs:srclink>http://feedproxy.google.com/~r/FangLeo/~3/EsI8AdTvk0k/</fs:srclink><fs:srcfeed>http://feedproxy.google.com/FangLeo</fs:srcfeed><fs:itemid>feedsky/anjing/~7211472/475622271/5100748</fs:itemid></item><item><title>insertAdjacentHTML、insertAdjacentText的用法与实例</title><link>http://feedproxy.google.com/~r/FangLeo/~3/lYKNRRUKVt8/</link><content:encoded>&lt;p&gt;经常用innerHTML和innerText（注意innerHTML是W3C标准,而innerText只是IE Only).但有的时候我们可能在dom节点的后面添加html内容，所以今天介绍一下insertAdjacentHTML。&lt;/p&gt;
&lt;p&gt;insertAdjacentHTML的好处很明显，它可以在html标签的标签开始前后及结束标签的前后添加内容：&lt;/p&gt;
&lt;p&gt;原型：&lt;strong&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;insertAdajcentHTML(swhere,stext) &lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;注意：firefox并不支持insertAdajcentHTML&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;参数：&lt;/p&gt;
&lt;p&gt;swhere: 指定插入html标签语句的地方，有四种值可用：&lt;/p&gt;
&lt;p&gt;1.     beforeBegin: 插入到标签开始前&lt;/p&gt;
&lt;p&gt;2.     afterBegin:插入到标签开始标记之后&lt;/p&gt;
&lt;p&gt;3.     beforeEnd:插入到标签结束标记前&lt;/p&gt;
&lt;p&gt;4.     afterEnd:插入到标签结束标记后&lt;/p&gt;
&lt;p&gt;stext：要插入的内容&lt;span id=&quot;more-1313&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;实例：&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;&amp;lt;html&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;lt;head&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;lt;script language=&amp;quot;javascript&amp;quot;&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; function myfun(){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var obj = document.getElementById(&amp;quot;btn1&amp;quot;);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; obj.insertAdjacentHTML(&amp;quot;afterEnd&amp;quot;,&amp;quot;&amp;lt;br&amp;gt;&amp;lt;input name=&amp;quot;txt1&amp;quot;&amp;gt;&amp;quot;);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; }&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;lt;/script&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;lt;/head&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;lt;body&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;input name=&amp;quot;txt&amp;quot;&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;input id=&amp;quot;btn1&amp;quot; name=&amp;quot;btn1&amp;quot; type=&amp;quot;button&amp;quot; value=&amp;quot;更多&amp;quot; onclick=&amp;quot;myfun()&amp;quot;&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;lt;/body&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;lt;/html&amp;gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;实例2：&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;&amp;lt;html&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;lt;head&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;lt;title&amp;gt;insertAdjacentHTML插入实例&amp;lt;/title&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;lt;script language=&amp;quot;jscript&amp;quot;&amp;gt;&lt;/li&gt;
&lt;li&gt;function addsome()&lt;/li&gt;
&lt;li&gt;{&lt;/li&gt;
&lt;li&gt;&amp;nbsp; var obj = document.getElementById(&amp;quot;warp&amp;quot;);&lt;/li&gt;
&lt;li&gt;&amp;nbsp; obj.insertAdjacentHTML(&amp;quot;afterBegin&amp;quot;,&amp;quot;&amp;lt;h1&amp;gt;在文本前容器内插入内容&amp;lt;/h1&amp;gt;&amp;quot;);&lt;/li&gt;
&lt;li&gt;&amp;nbsp; obj.insertAdjacentHTML(&amp;quot;beforeEnd&amp;quot;,&amp;quot;&amp;lt;h2&amp;gt;在文本后容器内插入内容&amp;lt;/h2&amp;gt;&amp;quot;);&lt;/li&gt;
&lt;li&gt;&amp;nbsp; obj.insertAdjacentHTML(&amp;quot;beforeBegin&amp;quot;,&amp;quot;&amp;lt;h4&amp;gt;在文本前容器外插入内容&amp;lt;/h1&amp;gt;&amp;quot;);&lt;/li&gt;
&lt;li&gt;&amp;nbsp; obj.insertAdjacentHTML(&amp;quot;afterEnd&amp;quot;,&amp;quot;&amp;lt;h5&amp;gt;在文本后容器外插入内容&amp;lt;/h2&amp;gt;&amp;quot;);&lt;/li&gt;
&lt;li&gt;&amp;nbsp; &lt;/li&gt;
&lt;li&gt;}&lt;/li&gt;
&lt;li&gt;&amp;lt;/script&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;lt;style&amp;gt;&lt;/li&gt;
&lt;li&gt;body{margin:0px;padding:0px;font-size:12px;}&lt;/li&gt;
&lt;li&gt;h1,h2,h3,h4,h5{font-weight:normal;font-size:12px;margin:5px;padding:0px;}&lt;/li&gt;
&lt;li&gt;.warp{border:1px solid green;}&lt;/li&gt;
&lt;li&gt;&amp;lt;/style&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;lt;/head&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;lt;body onload=&amp;quot;addsome()&amp;quot;&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;lt;div id=&amp;quot;warp&amp;quot; class=&amp;quot;warp&amp;quot;&amp;gt;原来的内容&amp;lt;/div&amp;gt;&amp;lt;hr&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;lt;/body&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;lt;/html&amp;gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;h2  class=&quot;related_post_title&quot;&gt;这些文章或许你也喜欢...&lt;/h2&gt;&lt;ul class=&quot;related_post&quot;&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=236&quot; title=&quot;快速玩转CuteFTP8.0 轻松晋升FTP服务高手&quot;&gt;快速玩转CuteFTP8.0 轻松晋升FTP服务高手&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=362&quot; title=&quot;回味2001年google搜索引擎暨seo优化&quot;&gt;回味2001年google搜索引擎暨seo优化&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=840&quot; title=&quot;细数国内几个值得推荐的网站UED博客&quot;&gt;细数国内几个值得推荐的网站UED博客&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=564&quot; title=&quot;上海中山公园艳照门事件，附照片，视频无处下载&quot;&gt;上海中山公园艳照门事件，附照片，视频无处下载&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=168&quot; title=&quot;电影未到，玩具先行──Wall-E登录中国！&quot;&gt;电影未到，玩具先行──Wall-E登录中国！&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=126&quot; title=&quot;[商务英语]常用商务对话示例 &quot;&gt;[商务英语]常用商务对话示例 &lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/jLZYZnRrLXi3P-SS0-TAHzHP1J0/0/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/jLZYZnRrLXi3P-SS0-TAHzHP1J0/0/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/jLZYZnRrLXi3P-SS0-TAHzHP1J0/1/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/jLZYZnRrLXi3P-SS0-TAHzHP1J0/1/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/FangLeo/~4/lYKNRRUKVt8&quot; height=&quot;1&quot; width=&quot;1&quot;/&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/475622272/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/lYKNRRUKVt8/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622272/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622272/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.fangleo.cn/?feed=rss2&amp;p=1313</wfw:commentRss><slash:comments>0</slash:comments><feedburner:origLink>http://www.fangleo.cn/?p=1313</feedburner:origLink><description>经常用innerHTML和innerText（注意innerHTML是W3C标准,而innerText只是IE Only).但有的时候我们可能在dom节点的后面添加html内容，所以今天介绍一下insertAdjacentHTML。
insertAdjacentHTML的好处很明显，它可以在ht...&lt;img src=&quot;http://www1.feedsky.com/t1/475622272/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/lYKNRRUKVt8/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622272/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622272/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>xhtml+css</category><pubDate>Tue, 19 Oct 2010 14:24:00 +0800</pubDate><author>Leo</author><comments>http://www.fangleo.cn/?p=1313#comments</comments><guid isPermaLink="false">http://www.fangleo.cn/?p=1313</guid><dc:creator>Leo</dc:creator><fs:srclink>http://feedproxy.google.com/~r/FangLeo/~3/lYKNRRUKVt8/</fs:srclink><fs:srcfeed>http://feedproxy.google.com/FangLeo</fs:srcfeed><fs:itemid>feedsky/anjing/~7211472/475622272/5100748</fs:itemid></item><item><title>今日凌晨IE9 Beta发布，试用感受(附下载地址)</title><link>http://feedproxy.google.com/~r/FangLeo/~3/OsH5KHe4s8o/</link><content:encoded>&lt;p style=&quot;text-align: center;&quot;&gt;&lt;img class=&quot;aligncenter&quot; title=&quot;IE9 Beta&quot; src=&quot;http://img2.pconline.com.cn/pconline/1009/16/2222436_IE9-vpk-hero3.jpg&quot; alt=&quot;IE9 Beta&quot; /&gt;&lt;/p&gt;
&lt;p&gt;IE9发布了，第一时间下载试用，不过本次beta版本不支持除vista和windows7以外的操作系统，leo用的是win7，直接下载安装。一下是简单实用后的感受。&lt;/p&gt;
&lt;p&gt;ie9beta版下载速度很快，安装时间也可以(相对之前的版本)，安装后的默认界面相当的简洁，状态栏隐藏的时候，链接地址显示效果同chrome一样。难怪有人说它&amp;#8221;像chrome一样优雅&amp;#8221;。页面加载明显加快，效果不错，但试用期间，死机频率很高。不过死机恢复机制似乎调用了系统的恢复机制。在页面加载或者显示出现故障的时候会在页面下方提示，点击对应链接后页面会恢复，但浏览器不用重启，仅仅是页面重启哦。&lt;/p&gt;
&lt;p&gt;&lt;span id=&quot;more-1310&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;好了，更多的比较还是看一下下面的这篇报道吧：&lt;/p&gt;
&lt;p&gt;万众期待的微软下一代浏览器 IE 9 Beta 已于北京时间9月16日凌晨正式发布！（请注意，Windows XP 不适用）&lt;/p&gt;
&lt;p&gt;IE9浏览器能够为用户带来快速、标准化Web支持以及完整的用户体验。IE9的用户界面更加简约、加载网页更加快速、对于HTML5技术的支持也更加规范——&lt;a href=&quot;http://softbbs.pconline.com.cn/11869355.html&quot; target=&quot;_blank&quot;&gt;这甚至赢得了竞争对手 Google 的赞叹&lt;/a&gt;！&lt;/p&gt;
&lt;table border=&quot;1&quot; cellspacing=&quot;0&quot; cellpadding=&quot;5&quot; width=&quot;434&quot; align=&quot;center&quot; bordercolor=&quot;#000000&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td width=&quot;110&quot; align=&quot;center&quot; bgcolor=&quot;#0476b3&quot;&gt;&lt;strong&gt;软件名称：&lt;/strong&gt;&lt;/td&gt;
&lt;td width=&quot;298&quot; align=&quot;left&quot;&gt;(IE9)Internet Explorer 9.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot; bgcolor=&quot;#0476b3&quot;&gt;&lt;strong&gt;软件版本：&lt;/strong&gt;&lt;/td&gt;
&lt;td align=&quot;left&quot;&gt;beta 简体中文版&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot; bgcolor=&quot;#0476b3&quot;&gt;&lt;strong&gt;软件大小：&lt;/strong&gt;&lt;/td&gt;
&lt;td align=&quot;left&quot;&gt;20166k&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot; bgcolor=&quot;#0476b3&quot;&gt;&lt;strong&gt;软件授权：&lt;/strong&gt;&lt;/td&gt;
&lt;td align=&quot;left&quot;&gt;免费&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot; bgcolor=&quot;#0476b3&quot;&gt;&lt;strong&gt;适用平台：&lt;/strong&gt;&lt;/td&gt;
&lt;td align=&quot;left&quot;&gt;Vista Win7&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align=&quot;center&quot; bgcolor=&quot;#0476b3&quot;&gt;&lt;strong&gt;下载地址：&lt;/strong&gt;&lt;/td&gt;
&lt;td align=&quot;left&quot;&gt;&lt;a href=&quot;http://dl.pconline.com.cn/download/60835.html&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;(IE9)Internet Explorer 9.0&lt;/span&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;IE9 新特性&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;IE9将会是微软迄今为止支持标准最广范的IE浏览器。与旧版的IE8相比，IE9的基准支持也会有所提高，其中包括新的Chakra JavaScript引擎，以及面向图形、文本和媒体内容的HTML5硬件加速功能。&lt;/p&gt;
&lt;p&gt;微软日前指出，在所有浏览器中只有IE9能实现完整硬件加速，也就是说可以将硬件加速运用到了Web页面的每一个内容上，包括文本、图像、背景、边框、SVG内容和HTML5视频/音频。（&lt;a href=&quot;http://pcedu.pconline.com.cn/softnews/yejie/1009/2215459.html&quot; target=&quot;_blank&quot;&gt;点击看测试视频&lt;/a&gt;）&lt;/p&gt;
&lt;p&gt;&lt;img title=&quot;IE9 Beta&quot; src=&quot;http://img2.pconline.com.cn/pconline/1009/16/2222436_IE9-vpk-hero3.jpg&quot; alt=&quot;IE9 Beta&quot; /&gt;&lt;br /&gt;
IE9 Beta 正式发布！&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;IE9 新Logo&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;IE9的Logo由简单线条构成，主色调为天蓝色和金黄色，中间采用渐变效果，看起来更加清爽畅快。&lt;/p&gt;
&lt;p&gt;&lt;img title=&quot;IE9&quot; src=&quot;http://img2.pconline.com.cn/pconline/1008/13/2194879_IE9-big.jpg&quot; alt=&quot;IE9&quot; /&gt;&lt;br /&gt;
IE9 Logo&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;IE9 新界面&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;相对以往版本，IE9的界面变动相当大。您先看看都有哪些改变？&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.pconline.com.cn/images/html/viewpic_pconline.htm?http://img2.pconline.com.cn/pconline/1009/16/2222436_ie9-ui.jpg&amp;amp;channel=171&quot; target=&quot;_blank&quot;&gt;&lt;img title=&quot;IE9 Beta&quot; src=&quot;http://img2.pconline.com.cn/pconline/1009/16/2222436_ie9-ui_thumb.jpg&quot; alt=&quot;IE9 Beta&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
IE9 焕然一新的界面&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;IE9 发布会&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;微软特地于美国当地时间9月15日，在旧金山举行了名为“&lt;a href=&quot;http://pcedu.pconline.com.cn/softnews/yejie/1009/2219313.html&quot; target=&quot;_blank&quot;&gt;Beauty of the Web&lt;/a&gt;”的 IE9 Beta 版媒体发布会（这也是微软首次为一款测试版产品举办如此庞大的发布活动）。&lt;/p&gt;
&lt;p&gt;为了给IE9宣传造势，微软还将在全球其他城市举办形式各异的发布会。中国的发布会被安排于北京时间9月17日。在伦敦，微软将与虚拟卡通乐队Gorillaz合作，共同庆祝IE9 Beta的发布。&lt;/p&gt;
&lt;h2  class=&quot;related_post_title&quot;&gt;这些文章或许你也喜欢...&lt;/h2&gt;&lt;ul class=&quot;related_post&quot;&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=308&quot; title=&quot;16个优秀网站教你网站设计&quot;&gt;16个优秀网站教你网站设计&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=1090&quot; title=&quot;li overflow在firfox下不显示滚动条的问题&quot;&gt;li overflow在firfox下不显示滚动条的问题&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=241&quot; title=&quot;2007年7月28日日志&quot;&gt;2007年7月28日日志&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=347&quot; title=&quot;今天，pr升到了2&quot;&gt;今天，pr升到了2&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=555&quot; title=&quot;javascript 学习笔记之表格排序&quot;&gt;javascript 学习笔记之表格排序&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=786&quot; title=&quot;这些知识能在危难时刻救你一命[转载]&quot;&gt;这些知识能在危难时刻救你一命[转载]&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/nBBRxWAkau_6CY9WHyqKBrw5QzU/0/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/nBBRxWAkau_6CY9WHyqKBrw5QzU/0/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/nBBRxWAkau_6CY9WHyqKBrw5QzU/1/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/nBBRxWAkau_6CY9WHyqKBrw5QzU/1/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/FangLeo/~4/OsH5KHe4s8o&quot; height=&quot;1&quot; width=&quot;1&quot;/&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/475622273/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/OsH5KHe4s8o/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622273/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622273/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.fangleo.cn/?feed=rss2&amp;p=1310</wfw:commentRss><slash:comments>0</slash:comments><feedburner:origLink>http://www.fangleo.cn/?p=1310</feedburner:origLink><description>IE9发布了，第一时间下载试用，不过本次beta版本不支持除vista和windows7以外的操作系统，leo用的是win7，直接下载安装。一下是简单实用后的感受。
ie9beta版下载速度很快，安装时间也可以(相对...&lt;img src=&quot;http://www1.feedsky.com/t1/475622273/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/OsH5KHe4s8o/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622273/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622273/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>试用</category><category>ie9</category><category>互联网</category><pubDate>Thu, 16 Sep 2010 09:53:28 +0800</pubDate><author>Leo</author><comments>http://www.fangleo.cn/?p=1310#comments</comments><guid isPermaLink="false">http://www.fangleo.cn/?p=1310</guid><dc:creator>Leo</dc:creator><fs:srclink>http://feedproxy.google.com/~r/FangLeo/~3/OsH5KHe4s8o/</fs:srclink><fs:srcfeed>http://feedproxy.google.com/FangLeo</fs:srcfeed><fs:itemid>feedsky/anjing/~7211472/475622273/5100748</fs:itemid></item><item><title>iPad成为英国用户阅读报刊杂志首选途径?</title><link>http://feedproxy.google.com/~r/FangLeo/~3/E950lPz81xA/</link><content:encoded>&lt;p&gt;好吧，我承认我喜欢这个方方正正玩意。一半出于对apple用户体验的朝拜，一半对于自身确切的需求。但很遗憾，ipad对于我是奢侈品，事实上价格高于2000的非生活必需品对于我，似乎都是奢侈品。&lt;/p&gt;
&lt;p&gt;ok，后天ipad就要国内上市了，不错本次ipad上市用了不同的方式，我们可以通过apple直营店，大型购物中心，甚至网络B2C网站。此外，此次发布的wifi版价格比水货的价格还要来得便宜也算是一个亮点吧。好，说正题吧。&lt;/p&gt;
&lt;p&gt;iResearch艾瑞咨询根据Cooper Murphy Webb 8月发布的数据发现，英国31%的iPad用户使用iPad阅读报刊杂志，超过电脑（26%）和印刷品（24%），iPad成为用户阅读报刊杂志的首选方式。&lt;span id=&quot;more-1308&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;艾瑞认为，iPad类杂志的设计，丰富的内容以及对各种应用的适用，带给了用户良好的使用体验。随着iPad的普及，iPad已经开始改变用户的日常生活，特别是阅读习惯，iPad有趋势成为用户阅读的最主要途径。另外，用户热衷于使用iPad进行内容消费而非内容生产，这符合经销商和出版商对于 iPad以娱乐为导向的预期。艾瑞建议，各类内容生产者，比如出版商和网站，可以通过优化内容生产和合理投放广告的方式，充分利用iPad这个传播途径赢得用户，从而获得更大的市场。&lt;/p&gt;
&lt;p&gt;&lt;img title=&quot;05B0D03AAEC1926A13B715D2BAF84AB7&quot; src=&quot;http://www.thenextpub.com/wp-content/uploads/2010/09/05B0D03AAEC1926A13B715D2BAF84AB7.gif&quot; alt=&quot;&quot; width=&quot;508&quot; height=&quot;364&quot; /&gt;&lt;/p&gt;
&lt;p&gt;再扯几句，我认为ipad这样类似的手持终端有很大的发展潜力，比如它可以做为教育终端，也可以作为某些场所的信息终端等。&lt;/p&gt;
&lt;h2  class=&quot;related_post_title&quot;&gt;这些文章或许你也喜欢...&lt;/h2&gt;&lt;ul class=&quot;related_post&quot;&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=226&quot; title=&quot;某些网友眼中的PC和MAC&quot;&gt;某些网友眼中的PC和MAC&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=69&quot; title=&quot;柴油慌，连公交车也不例外？&quot;&gt;柴油慌，连公交车也不例外？&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=533&quot; title=&quot;Div+css实例教程：网站头部图标与logo部分的设计（7）&quot;&gt;Div+css实例教程：网站头部图标与logo部分的设计（7）&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=149&quot; title=&quot;伪球迷，德国队和欧洲杯&quot;&gt;伪球迷，德国队和欧洲杯&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=956&quot; title=&quot;代码更清晰高效的一些经验&quot;&gt;代码更清晰高效的一些经验&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=203&quot; title=&quot;仿msn轮换广告，附带缩略图的JS图片轮换代码&quot;&gt;仿msn轮换广告，附带缩略图的JS图片轮换代码&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/p2hxqA5yUc93S3BsJBjg49MyV5o/0/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/p2hxqA5yUc93S3BsJBjg49MyV5o/0/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/p2hxqA5yUc93S3BsJBjg49MyV5o/1/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/p2hxqA5yUc93S3BsJBjg49MyV5o/1/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/FangLeo/~4/E950lPz81xA&quot; height=&quot;1&quot; width=&quot;1&quot;/&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/475622274/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/E950lPz81xA/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622274/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622274/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.fangleo.cn/?feed=rss2&amp;p=1308</wfw:commentRss><slash:comments>0</slash:comments><feedburner:origLink>http://www.fangleo.cn/?p=1308</feedburner:origLink><description>好吧，我承认我喜欢这个方方正正玩意。一半出于对apple用户体验的朝拜，一半对于自身确切的需求。但很遗憾，ipad对于我是奢侈品，事实上价格高于2000的非生活必需品对于我，似乎都是奢侈...&lt;img src=&quot;http://www1.feedsky.com/t1/475622274/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/E950lPz81xA/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622274/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622274/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>新鲜酷玩</category><category>ipad</category><pubDate>Wed, 15 Sep 2010 22:29:28 +0800</pubDate><author>Leo</author><comments>http://www.fangleo.cn/?p=1308#comments</comments><guid isPermaLink="false">http://www.fangleo.cn/?p=1308</guid><dc:creator>Leo</dc:creator><fs:srclink>http://feedproxy.google.com/~r/FangLeo/~3/E950lPz81xA/</fs:srclink><fs:srcfeed>http://feedproxy.google.com/FangLeo</fs:srcfeed><fs:itemid>feedsky/anjing/~7211472/475622274/5100748</fs:itemid></item><item><title>一款极为轻量的及时显示上证指数与深成指数的小软件</title><link>http://feedproxy.google.com/~r/FangLeo/~3/KyZrzrpZVY0/</link><content:encoded>&lt;p&gt;如果上班的时候不方便打开股票软件或访问网页，你可以打开这个小软件，相当简单，及时更新最新的上证指数与深证成指。前提是你的电脑要能连上网络。&lt;/p&gt;
&lt;div&gt;
&lt;img src=&quot;http://www.fangleo.cn/images/s_20100914.gif&quot; alt=&quot;&quot; /&gt;
&lt;/div&gt;
&lt;p&gt;&lt;span id=&quot;more-1304&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div&gt;
&lt;img src=&quot;http://www.fangleo.cn/images/s_201009141.gif&quot; alt=&quot;&quot; /&gt;
&lt;/div&gt;
&lt;p&gt;这个软件及其小巧，直接运行无需安装，运行后会浮动在屏幕右下角，可以直接拖动到桌面的任意位置。在股市开盘期间会自动更新数据。双击股票名称将打开网页版行情页面。点击上涨或下跌箭头快速显示指数。&lt;/p&gt;
&lt;p&gt;这个小软件逻辑及其简单，主要是自用。因为leo想关注股市进展，又不想打开股票软件，甚至在线的页面也不想打开。所以弄了这个小东西，浮在桌面角落，时不时的漂上一眼，了解最新的股市状况，相当的方便。&lt;/p&gt;
&lt;p&gt;欢迎大家使用，有什么bug或者建议可以直接留言。&lt;/p&gt;
&lt;p&gt;下载地址：&lt;a href=&quot;http://wordpressplus.googlecode.com/files/StockBar.rar&quot;&gt;StockBar快速下载&lt;/a&gt; | &lt;a href=&quot;http://www.fangleo.cn/download/StockBar.rar&quot;&gt;本地下载&lt;/a&gt;&lt;/p&gt;
&lt;h2  class=&quot;related_post_title&quot;&gt;这些文章或许你也喜欢...&lt;/h2&gt;&lt;ul class=&quot;related_post&quot;&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=316&quot; title=&quot;银行不接受太幽默的密码？&quot;&gt;银行不接受太幽默的密码？&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=5&quot; title=&quot;对生者祝福平安,为逝者悲伤默哀! &quot;&gt;对生者祝福平安,为逝者悲伤默哀! &lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=326&quot; title=&quot;人生中，比较惨白的那一部分&quot;&gt;人生中，比较惨白的那一部分&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=402&quot; title=&quot;外一篇： 十大热门股票软件『免费』 &quot;&gt;外一篇： 十大热门股票软件『免费』 &lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=73&quot; title=&quot;贯穿大西洋海底的望远镜？&quot;&gt;贯穿大西洋海底的望远镜？&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=268&quot; title=&quot;windows 2003服务器的iis6不能播放流媒体文件flv&quot;&gt;windows 2003服务器的iis6不能播放流媒体文件flv&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/-9bqJxUDRtmI9Pl2U0CwH3bV6b0/0/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/-9bqJxUDRtmI9Pl2U0CwH3bV6b0/0/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/-9bqJxUDRtmI9Pl2U0CwH3bV6b0/1/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/-9bqJxUDRtmI9Pl2U0CwH3bV6b0/1/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/FangLeo/~4/KyZrzrpZVY0&quot; height=&quot;1&quot; width=&quot;1&quot;/&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/475622275/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/KyZrzrpZVY0/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622275/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622275/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.fangleo.cn/?feed=rss2&amp;p=1304</wfw:commentRss><slash:comments>0</slash:comments><feedburner:origLink>http://www.fangleo.cn/?p=1304</feedburner:origLink><description>如果上班的时候不方便打开股票软件或访问网页，你可以打开这个小软件，相当简单，及时更新最新的上证指数与深证成指。前提是你的电脑要能连上网络。







这个软件及其小巧，直接运行...&lt;img src=&quot;http://www1.feedsky.com/t1/475622275/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/KyZrzrpZVY0/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622275/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622275/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>新鲜酷玩</category><category>上证指数</category><category>.Net技术</category><category>深圳成指</category><pubDate>Tue, 14 Sep 2010 11:52:59 +0800</pubDate><author>Leo</author><comments>http://www.fangleo.cn/?p=1304#comments</comments><guid isPermaLink="false">http://www.fangleo.cn/?p=1304</guid><dc:creator>Leo</dc:creator><fs:srclink>http://feedproxy.google.com/~r/FangLeo/~3/KyZrzrpZVY0/</fs:srclink><fs:srcfeed>http://feedproxy.google.com/FangLeo</fs:srcfeed><fs:itemid>feedsky/anjing/~7211472/475622275/5100748</fs:itemid></item><item><title>利用httpHandlers实现Url ReWrite(2)</title><link>http://feedproxy.google.com/~r/FangLeo/~3/5Zx1lVzx3t8/</link><content:encoded>&lt;p&gt;上一篇文章只是涉及简单的原理，今天的这篇稍微的深入，设计到Url ReWrite,具体看例子：&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;using System.Web;&lt;/li&gt;
&lt;li&gt;using System.Text.RegularExpressions;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;/// &amp;lt;summary&amp;gt;&lt;/li&gt;
&lt;li&gt;///httphander 的摘要说明&lt;/li&gt;
&lt;li&gt;/// &amp;lt;/summary&amp;gt;&lt;/li&gt;
&lt;li&gt;public class httphander : IHttpHandler&lt;/li&gt;
&lt;li&gt;{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;public httphander()&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;public void ProcessRequest(System.Web.HttpContext Context)&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;try&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;//申明Request&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HttpRequest Request = Context.Request;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;//取来路Url &lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;string Url = Request.Url.PathAndQuery;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;string LookFor = @&amp;quot;/([\d]{4}).do&amp;quot;;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;string SendTo = @&amp;quot;/default.aspx?id=$1&amp;quot;;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Regex Reg = new Regex(@LookFor);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;MatchCollection mc = Reg.Matches(Url);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;string reUrl = SendTo;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (mc.Count &amp;gt; 0)&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;//用正则表达式进行匹配&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;for (int i = 0, j = mc[0].Groups.Count; i &amp;lt; j; i++)&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;reUrl = reUrl.Replace(&amp;quot;$&amp;quot; + i.ToString(), mc[0].Groups[i].Value); &lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Context.Server.Execute(reUrl);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;else {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Context.Response.Redirect(Context.Request.Url.ToString());&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;catch&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Context.Response.Redirect(Context.Request.Url.ToString());&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;public bool IsReusable {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;get { return true; }&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;}&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;&lt;span id=&quot;more-1301&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;在上篇的配置下，直接修改上面的代码，然后测试一下，localhost/1234.do 就会自动跳转到default.aspx?id=1234.&lt;br /&gt;
此外，我用了LookFor和SendTo两个变量来处理捕获字段和匹配字段，设想一下，如果我们把这些存放到某个xml文件中，同过for循环来里面你的配置xml中匹配，就能完成URL Rewirte的功能。&lt;/p&gt;
&lt;p&gt;下篇文章会继续httpHandlers。&lt;/p&gt;
&lt;h2  class=&quot;related_post_title&quot;&gt;这些文章或许你也喜欢...&lt;/h2&gt;&lt;ul class=&quot;related_post&quot;&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=1298&quot; title=&quot;利用httpHandlers实现Url ReWrite(1)&quot;&gt;利用httpHandlers实现Url ReWrite(1)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/co1aBNjsNqXA5bnTz-GJUZAHJtk/0/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/co1aBNjsNqXA5bnTz-GJUZAHJtk/0/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/co1aBNjsNqXA5bnTz-GJUZAHJtk/1/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/co1aBNjsNqXA5bnTz-GJUZAHJtk/1/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/FangLeo/~4/5Zx1lVzx3t8&quot; height=&quot;1&quot; width=&quot;1&quot;/&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/475622276/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/5Zx1lVzx3t8/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622276/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622276/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.fangleo.cn/?feed=rss2&amp;p=1301</wfw:commentRss><slash:comments>0</slash:comments><feedburner:origLink>http://www.fangleo.cn/?p=1301</feedburner:origLink><description>上一篇文章只是涉及简单的原理，今天的这篇稍微的深入，设计到Url ReWrite,具体看例子：
using System.Web;
using System.Text.RegularExpressions;
&amp;#160;
&amp;#160;
/// &amp;#60;summary&amp;#62;
///httphander 的摘要说明
/// &amp;#60;/summ...&lt;img src=&quot;http://www1.feedsky.com/t1/475622276/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/5Zx1lVzx3t8/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622276/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622276/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>.Net技术</category><category>Url ReWrite</category><pubDate>Tue, 07 Sep 2010 13:56:40 +0800</pubDate><author>Leo</author><comments>http://www.fangleo.cn/?p=1301#comments</comments><guid isPermaLink="false">http://www.fangleo.cn/?p=1301</guid><dc:creator>Leo</dc:creator><fs:srclink>http://feedproxy.google.com/~r/FangLeo/~3/5Zx1lVzx3t8/</fs:srclink><fs:srcfeed>http://feedproxy.google.com/FangLeo</fs:srcfeed><fs:itemid>feedsky/anjing/~7211472/475622276/5100748</fs:itemid></item><item><title>利用httpHandlers实现Url ReWrite(1)</title><link>http://feedproxy.google.com/~r/FangLeo/~3/y6pvoO5mKB4/</link><content:encoded>&lt;p&gt;URL ReWrite非常的常用，PHP这方面的配置比较简单也很强大，其实.net可以很方便。以下内容只是一个大概，先了解一下基础：&lt;br /&gt;
ASP.NET都使用HTTP请求实现了大量的自己的功能。ASP.NET使用处理程序来处理.aspx，.asmx，.soap和其他一些ASP.NET文件。&lt;br /&gt;
实现HTTP处理程序包含以下步骤：&lt;br /&gt;
1.编写一个实现IHttpHandler接口的类。&lt;br /&gt;
2. 在web.config文件中注册这个处理程序。&lt;br /&gt;
3.在Internet服务管理器中把文件扩展如：（.do）映射到ASP.NET ISAPI扩展DLL（aspnet_isapi.dll）上。&lt;span id=&quot;more-1298&quot;&gt;&lt;/span&gt;&lt;br /&gt;
第一步&lt;br /&gt;
构建类库：&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;using System.Web;&lt;/li&gt;
&lt;li&gt;/// &amp;lt;summary&amp;gt;&lt;/li&gt;
&lt;li&gt;///httphander 的摘要说明&lt;/li&gt;
&lt;li&gt;/// &amp;lt;/summary&amp;gt;&lt;/li&gt;
&lt;li&gt;public class httphander : IHttpHandler&lt;/li&gt;
&lt;li&gt;{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;public httphander()&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;public void ProcessRequest(System.Web.HttpContext context)&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;System.Web.HttpResponse obj = context.Response;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;obj.Write(&amp;quot;&amp;lt;html&amp;gt;&amp;lt;body&amp;gt;测试一下，没有实际文件也能看到内容哦！&amp;quot;);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;obj.Write(&amp;quot;&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;&amp;quot;);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;public bool IsReusable {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;get { return true; }&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;}&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;第二步，注册的时候一定要写上一步的class（type=&amp;#8221;httphander&amp;#8221;）&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;&amp;lt;httpHandlers&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;lt;add verb=&amp;quot;*&amp;quot; path=&amp;quot;*.do&amp;quot; type=&amp;quot;httphander&amp;quot;/&amp;gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;lt;/httpHandlers&amp;gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;第三步&lt;br /&gt;
运行IIS服务管理器，右键点击默认Web站点，选择属性，移动到主目录选项页，并点击配置按钮。&lt;br /&gt;
应用程序配置对话框弹出来了。&lt;br /&gt;
点击添加按钮并在可执行字段输入aspnet_isapi.dll文件路径，在扩展字段输入.do&lt;br /&gt;
备注：可以先找到扩展名为.apsx，双击或编辑，复制“可执行文件地址”，然后添加.do的时候可以直接粘贴过去。最后最下方的确认文件是否存在的勾要去掉。&lt;/p&gt;
&lt;p&gt;好了，测试一下吧，loaclhost/1.do或者按照你实际的配置访问一个根目录的文件。&lt;/p&gt;
&lt;h2  class=&quot;related_post_title&quot;&gt;这些文章或许你也喜欢...&lt;/h2&gt;&lt;ul class=&quot;related_post&quot;&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=1301&quot; title=&quot;利用httpHandlers实现Url ReWrite(2)&quot;&gt;利用httpHandlers实现Url ReWrite(2)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/d3Mta3wm02GHBjM15JCziATAZr8/0/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/d3Mta3wm02GHBjM15JCziATAZr8/0/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/d3Mta3wm02GHBjM15JCziATAZr8/1/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/d3Mta3wm02GHBjM15JCziATAZr8/1/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/FangLeo/~4/y6pvoO5mKB4&quot; height=&quot;1&quot; width=&quot;1&quot;/&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/475622277/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/y6pvoO5mKB4/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622277/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622277/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.fangleo.cn/?feed=rss2&amp;p=1298</wfw:commentRss><slash:comments>0</slash:comments><feedburner:origLink>http://www.fangleo.cn/?p=1298</feedburner:origLink><description>URL ReWrite非常的常用，PHP这方面的配置比较简单也很强大，其实.net可以很方便。以下内容只是一个大概，先了解一下基础：
ASP.NET都使用HTTP请求实现了大量的自己的功能。ASP.NET使用处理程序来...&lt;img src=&quot;http://www1.feedsky.com/t1/475622277/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/y6pvoO5mKB4/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622277/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622277/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>.Net技术</category><category>Url ReWrite</category><category>httpHandlers</category><pubDate>Mon, 06 Sep 2010 18:02:27 +0800</pubDate><author>Leo</author><comments>http://www.fangleo.cn/?p=1298#comments</comments><guid isPermaLink="false">http://www.fangleo.cn/?p=1298</guid><dc:creator>Leo</dc:creator><fs:srclink>http://feedproxy.google.com/~r/FangLeo/~3/y6pvoO5mKB4/</fs:srclink><fs:srcfeed>http://feedproxy.google.com/FangLeo</fs:srcfeed><fs:itemid>feedsky/anjing/~7211472/475622277/5100748</fs:itemid></item><item><title>解析 this.initialize.apply(this, arguments)</title><link>http://feedproxy.google.com/~r/FangLeo/~3/IMpmMI9M8j8/</link><content:encoded>&lt;p&gt;最近在整理一些常用的js方法，本在此基础上写一些常用的应用，顺便参考了一下其他框架的，其中看到prototype.js开始的几个方法，会用，但不是很理解，或者说理解还不透彻，所以google了一篇文章，复习一下：&lt;/p&gt;
&lt;p&gt;基础啊，但一定要扎实，知其然知其所以然.&lt;/p&gt;
&lt;p&gt;prototype.js代码片段&lt;/p&gt;
&lt;p&gt;代码如下:&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;var Class = {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;create: function() {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return function() {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;this.initialize.apply(this , arguments);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;}&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;&lt;span id=&quot;more-1294&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;// Class使用方法如下&lt;/li&gt;
&lt;li&gt;var A = Class.create();&lt;/li&gt;
&lt;li&gt;A. prototype={&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;initialize:function(v){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;this .value=v;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;showValue:function(){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;alert(this.value);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;}&lt;/li&gt;
&lt;li&gt;var a = new A(‘helloWord!');&lt;/li&gt;
&lt;li&gt;a. showValue();//弹出对话框helloWord！&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;l initialize是什么?&lt;br /&gt;
l apply方法是干什么的？&lt;br /&gt;
l arguments变量呢？&lt;br /&gt;
l 为什么new A后就会执行initialize方法？&lt;br /&gt;
寻找答案：&lt;/p&gt;
&lt;p&gt;二、 Js的面向对象&lt;br /&gt;
initialize是什么?&lt;br /&gt;
只不过是个变量，代表一个方法，用途是类的构造函数。&lt;br /&gt;
其具体功能靠js的面向对象支持，那么js的面向对象是什么样子的那？和java 的有什么相同与不同？&lt;br /&gt;
看代码：&lt;/p&gt;
&lt;p&gt;代码如下:&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;var ClassName = function(v){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;this.value=v;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;this.getValue=function(){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return this.value;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;this.setValue=function(v){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;this.value=v;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;}&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;那么JS中的函数和类有什么不同呢？&lt;br /&gt;
其实是一样的，ClassName就是一个函数，当出现在new后面的时候就作为一个构造函数来构造对象。&lt;br /&gt;
如&lt;/p&gt;
&lt;p&gt;代码如下:&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;var objectName1 = new ClassName(“a”);//得到一个对象&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;其中objectName1就是执行ClassName构造函数后得到的对象，而在ClassName函数中的this指的就是new之后构造出来的对象，所以objectName1会后一个属性和两个方法。可以通过这样来调用他们：&lt;/p&gt;
&lt;p&gt;代码如下:&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;objectName1.setValue(''hello'');&lt;/li&gt;
&lt;li&gt;alert(objectName1.getValue());//对话框hello&lt;/li&gt;
&lt;li&gt;alert(objectName1.value) ;//对话框hello&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;那么&lt;/p&gt;
&lt;p&gt;复制代码 代码如下:&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;var objectName2 = ClassName(“b”);//得到一个对象&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;这样objectName2得到的是什么呢？显然是方法的返回值，这里ClassName只作为了一个普通的函数（虽然首字母大写了）。但是在之前写的ClassName中并没有返回值，所以objectName2会是undifinded那么“b”赋给谁了呢？在这并没有产生一个对象，而只是单纯的执行这个方法，所以这个“b”赋值给了调用这个方法的对象window，证据如下：&lt;br /&gt;
var objectName2 = ClassName(“b”);//得到一个对象&lt;br /&gt;
alert(window.value)；//对话框b&lt;br /&gt;
所以JS中的所有function都是一样的，但是用途可能是不同的（用作构造对象抑或是执行一个过程）。&lt;br /&gt;
下面该回到主题了initialize是干什么的？&lt;/p&gt;
&lt;p&gt;代码如下:&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;var Class = {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;create: function() {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return function() {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;this.initialize.apply(this , arguments);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;}&lt;/li&gt;
&lt;li&gt;var A = Class.create();&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;这段代码是构造个一个function复制给A，这个function是&lt;/p&gt;
&lt;p&gt;复制代码 代码如下:&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;function() {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;this.initialize.apply(this , arguments);&lt;/li&gt;
&lt;li&gt;}&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;并且后面这个方法是用来做构造函数的。当使用这个构造函数来构造对象的时候，会让构造出来的这个对象的initialize变量执行apply() 方法，apply()的用途后面在说，继续说initialize。这样在初始化对象的时候会联系到initialize（怎么联系就要看apply的了）。&lt;br /&gt;
那么&lt;/p&gt;
&lt;p&gt;代码如下:&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;A.prototype={&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;initialize:function(v){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;this .value=v;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;showValue:function(){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;alert(this.value);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;}&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;是什么意思呢？&lt;br /&gt;
Prototype是“原型”的意思。A是一个function（），那么A. prototype，就是function中的一个变量，其实是个对象。这个对象拥有什么方法，那么function产生的对象就拥有什么方法，故&lt;br /&gt;
var a = new A(‘helloWord!&amp;#8217;);&lt;br /&gt;
a. showValue();//弹出对话框helloWord！&lt;br /&gt;
所以a对象也会有initialize方法，不只如此，每一个有A构造出来的对象都会有一个initialize方法，而在前面说过，构造的时候会调用构造函数，构造函数里面会让initialize去调用apply方法，于是在new A(‘helloWord!&amp;#8217;)的时候initialize回去调用apply方法。这也就是调用了一个初始化的方法。&lt;/p&gt;
&lt;p&gt;三、 call()和apply()&lt;br /&gt;
下面开始研究apply()，在网上找了几个资料，并结合自己的研究，了解了call()和 apply()的功能。功能基本一样，function().call(object,{},{}……)或者function().apply (object,[……])的功能就是对象object调用这里的funciton()，不同之处是call参数从第二个开始都是传递给funciton 的，可以依次罗列用“，”隔开。而apply只有两个参数，第二个是一个数组，其中存储了所有传递给function的参数。&lt;br /&gt;
this.initialize.apply(this , arguments);&lt;br /&gt;
是什么意思？&lt;br /&gt;
这里的第一个this，是指用new调用构造函数之后生成的对象，也就是前面的a，那么第二个this也当然应该是指同一个对象。那这句话就是this（也就是a）调用initialize方法，参数是arguments对象（参数的数组对象），所以在构造函数执行的时候，对象a就会去执行 initialize方法来初始化，这样就和单词“initialize”的意思对上了。&lt;br /&gt;
那么执行initialize方法的参数怎么传递进去的呢？&lt;/p&gt;
&lt;p&gt;四、 Arguments对象&lt;br /&gt;
这段代码能说明一切了：&lt;/p&gt;
&lt;p&gt;代码如下:&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;function test(){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;alert(typeof arguments);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;for(var i=0; i&amp;lt;arguments.length; i++){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;alert(arguments[i]);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;}&lt;/li&gt;
&lt;li&gt;test(&amp;quot;1&amp;quot;,&amp;quot;2&amp;quot;,&amp;quot;3&amp;quot;);&lt;/li&gt;
&lt;li&gt;test(&amp;quot;a&amp;quot;,&amp;quot;b&amp;quot;);&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;执行后alert(typeof arguments);会显示object，说明arguments是对象。然后会依次打出1、2、3。说明arguments就是调用函数的实参数组。&lt;/p&gt;
&lt;p&gt;代码如下:&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;var Class = {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;create: function() {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return function() {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;this.initialize.apply(this , arguments);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;}&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;arguments 就是create返回的构造函数的实参数组，那么在&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;var a = new A(‘helloWord!');&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;的时候‘helloWord!&amp;#8217;就是实参数组（虽然只有一个字符串），传递给方法apply，然后在调用initialize 的时候作为参数传递给初始化函数initialize。&lt;/p&gt;
&lt;p&gt;ok,到这里请回顾一下，如果你还不清楚一下几个问题，请重新阅读本文：这是做什么用，原理是什么，为什么要这么用&lt;br /&gt;
文章引用部分来自&lt;a href=&quot;http://www.cnblogs.com/uedt/archive/2010/06/24/1764561.html&quot;&gt;这里&lt;/a&gt;&lt;/p&gt;
&lt;h2  class=&quot;related_post_title&quot;&gt;这些文章或许你也喜欢...&lt;/h2&gt;&lt;ul class=&quot;related_post&quot;&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=162&quot; title=&quot;2008年7月7日日志&quot;&gt;2008年7月7日日志&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=1078&quot; title=&quot;.NET程序员必须知道的八个网站&quot;&gt;.NET程序员必须知道的八个网站&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=892&quot; title=&quot;决定从盘古迁出&quot;&gt;决定从盘古迁出&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=1188&quot; title=&quot;Jquery获取表格是否含有自定义style&quot;&gt;Jquery获取表格是否含有自定义style&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=671&quot; title=&quot;iphone被盗了&quot;&gt;iphone被盗了&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=648&quot; title=&quot;jquery如何取得text,areatext,radio,checkbox,select的值,以及其他一些操作&quot;&gt;jquery如何取得text,areatext,radio,checkbox,select的值,以及其他一些操作&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/wFVQ8sNPDKX4lc2q2m11T6DiEjY/0/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/wFVQ8sNPDKX4lc2q2m11T6DiEjY/0/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/wFVQ8sNPDKX4lc2q2m11T6DiEjY/1/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/wFVQ8sNPDKX4lc2q2m11T6DiEjY/1/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/FangLeo/~4/IMpmMI9M8j8&quot; height=&quot;1&quot; width=&quot;1&quot;/&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/475622278/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/IMpmMI9M8j8/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622278/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622278/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.fangleo.cn/?feed=rss2&amp;p=1294</wfw:commentRss><slash:comments>0</slash:comments><feedburner:origLink>http://www.fangleo.cn/?p=1294</feedburner:origLink><description>最近在整理一些常用的js方法，本在此基础上写一些常用的应用，顺便参考了一下其他框架的，其中看到prototype.js开始的几个方法，会用，但不是很理解，或者说理解还不透彻，所以google了一篇...&lt;img src=&quot;http://www1.feedsky.com/t1/475622278/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/IMpmMI9M8j8/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622278/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622278/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>懒得分类</category><pubDate>Tue, 31 Aug 2010 10:00:02 +0800</pubDate><author>Leo</author><comments>http://www.fangleo.cn/?p=1294#comments</comments><guid isPermaLink="false">http://www.fangleo.cn/?p=1294</guid><dc:creator>Leo</dc:creator><fs:srclink>http://feedproxy.google.com/~r/FangLeo/~3/IMpmMI9M8j8/</fs:srclink><fs:srcfeed>http://feedproxy.google.com/FangLeo</fs:srcfeed><fs:itemid>feedsky/anjing/~7211472/475622278/5100748</fs:itemid></item><item><title>监控DOM属性(attribute)变化的函数</title><link>http://feedproxy.google.com/~r/FangLeo/~3/P3D72HuvH7o/</link><content:encoded>&lt;p&gt;之前有的需求，就是减少自动更新的数据请求量，主要是针对需要及时更新数据的模块属于隐藏或者其parent是隐藏的状况。这种情况下，数据不需要更新，直到这个模块被切换到显示为止。&lt;/p&gt;
&lt;p&gt;这样做的方法有很多，在数据更新内部加上两个控制方法（alive(),sleep()），在切换的同时激活对应的方法即可，似乎是一个比较简便的方法，但涉及到切换是需要知道改数据更新实例的实例名。而我的设想是，数据更新实例和切换实例完全地独立，不需要任何的交叉。所以，需要数据更新实例自己去检测这样的状态。&lt;/p&gt;
&lt;p&gt;似乎还有一种简单的方法，比如我加上一个全局的cache去存储每个页面显示元素的状态，然后周期更新的时候去判断这个状态。问题是，我无法在某个更新实例被显示（或者说激活）的同时，同步地立即更新数据，更新实例的内部更新周期会导致一定的延迟，而之前由于隐藏之后，数据一致没有更新过，那么这部分的数据是严重滞后的。所以在不调用更新实例内部方法的同时，需要添加一个监听事件，便于捕获到页面的显示与隐藏。&lt;span id=&quot;more-1288&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;我选择了直接在更新某块内部添加这样的事件：&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;this.auto = setInterval(function(){&lt;/li&gt;
&lt;li&gt;&amp;nbsp; var fn = arguments.callee;&lt;/li&gt;
&lt;li&gt;&amp;nbsp; //向上追溯检查是否为隐藏，放回obj{状态，第一个隐藏的节点}&lt;/li&gt;
&lt;li&gt;&amp;nbsp; if (_t.CheckVisible().state){ &lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;_t.Update();&lt;/li&gt;
&lt;li&gt;&amp;nbsp; }else{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;//添加监听事件&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;var o = _t.CheckVisible().obj;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;if(indexOf(_t.Listerner,o) &amp;gt;-1){&amp;nbsp; &lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;//_t.Listerner存储是否添加了监听事件&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;return;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}else{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;_t.Listerner.push(o);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;attchListener(o,function(e){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if(o.style.display!=&amp;quot;none&amp;quot;){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;detachListener(o,arguments.callee);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;//移除监听&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;_t.Listerner.splice(indexOf(_t.Listerner,o),1);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;fn();&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;});&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp; }&lt;/li&gt;
&lt;li&gt;&amp;nbsp; },this.options.interval);&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;监听事件方法实现：&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;var attchListener = function(elem,fn){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;var b = new B();&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;if(elem.attachEvent &amp;amp;&amp;amp; !b.opera) {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;var r = elem.attachEvent('onpropertychange', fn);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;return r;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}else if(b.firefox || b.opera){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;elem.addEventListener(&amp;quot;DOMAttrModified&amp;quot;,fn,false);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;return true;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}else{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;//chrome及其他&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;elem.attrs = getAllAttributes(elem);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;elem.attrListener =setInterval(function(){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;var tmp = getAllAttributes(elem);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if(!equal(elem.attrs,tmp)){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;elem.attrs = getAllAttributes(elem);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;fn();&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;},200);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; }&lt;/li&gt;
&lt;li&gt;&amp;nbsp; }&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;p&gt;这里仅用到了判断style.display，在ie下，能捕获到Dom的所有变化，事件和innerHTML变化等，,由于是当前值是测试，这个方法的版本仅兼容ie6,7,8,firefox,opera,safari和chrome,其他浏览器未测试。&lt;/p&gt;
&lt;p&gt;attchListener涉及到的几个方法：&lt;/p&gt;
&lt;div class=&quot;hl-surround&quot;&gt;&lt;ol class=&quot;hl-main ln-show&quot; title=&quot;Double click to hide line number.&quot; ondblclick = &quot;linenumber(this)&quot;&gt;&lt;li class=&quot;hl-firstline&quot;&gt;//移除&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; detachListener = function(elem,fn){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;var b = new B();&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;if(elem.attachEvent &amp;amp;&amp;amp; !b.opera) {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;var r = elem.detachEvent('onpropertychange', fn);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;return r;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}else if(b.firefox || b.opera){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;elem.removeEventListener(&amp;quot;DOMAttrModified&amp;quot;,fn,false);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;return true;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}else{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;if(elem.attrListener) clearInterval(elem.attrListener);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp; }&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; //浏览器判断&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; B = function() {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;var ua = window.navigator.userAgent.toLowerCase();&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;var b = {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;msie: /msie/.test(ua) &amp;amp;&amp;amp; !/opera/.test(ua),&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;opera: /opera/.test(ua),&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;safari: /webkit/.test(ua) &amp;amp;&amp;amp; !/chrome/.test(ua),&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;firefox: /firefox/.test(ua),&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;chrome: /chrome/.test(ua)&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;};&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;var vMark = &amp;quot;&amp;quot;;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;for (var i in b) {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;if (b[i]) {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;vMark = &amp;quot;safari&amp;quot; == i ? &amp;quot;version&amp;quot;: i;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;break&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;b.version = vMark &amp;amp;&amp;amp; RegExp(&amp;quot;(?:&amp;quot; + vMark + &amp;quot;)[\\/: ]([\\d.]+)&amp;quot;).test(ua) ? RegExp.$1: &amp;quot;0&amp;quot;;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;b.ie = b.msie;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;b.ie6 = b.msie &amp;amp;&amp;amp; parseInt(b.version, 10) == 6;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;b.ie7 = b.msie &amp;amp;&amp;amp; parseInt(b.version, 10) == 7;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;b.ie8 = b.msie &amp;amp;&amp;amp; parseInt(b.version, 10) == 8;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;return b&lt;/li&gt;
&lt;li&gt;&amp;nbsp; };&lt;/li&gt;
&lt;li&gt;&amp;nbsp; &lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;//获取node的所有attributes&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/li&gt;
&lt;li&gt;&amp;nbsp; function getAllAttributes(node){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;var obj = {};&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;// 判断输入的是否是元素节点&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;if(Boolean(node) &amp;amp;&amp;amp; node.nodeType == 1){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;for(var i = 0; i &amp;lt; node.attributes.length; i++){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;var attr = node.attributes[i];&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;obj[attr.name] = attr.value;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;return obj;&lt;/li&gt;
&lt;li&gt;&amp;nbsp; }&lt;/li&gt;
&lt;li&gt;&amp;nbsp; &lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;//判断两个对象是否相同&lt;/li&gt;
&lt;li&gt;&amp;nbsp; function equal(objA, objB)&lt;/li&gt;
&lt;li&gt;&amp;nbsp; {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;if (typeof arguments[0] != typeof arguments[1]){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;return false;&amp;nbsp; &amp;nbsp;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;//数组&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;if (arguments[0] instanceof Array)&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;if (arguments[0].length != arguments[1].length){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return false;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;var allElementsEqual = true;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;for (var i = 0; i &amp;lt; arguments[0].length; ++i)&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (typeof arguments[0][i] != typeof arguments[1][i]){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return false;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (typeof arguments[0][i] == 'number' &amp;amp;&amp;amp; typeof arguments[1][i] == 'number')&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;allElementsEqual = (arguments[0][i] == arguments[1][i]);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;else&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;allElementsEqual = arguments.callee(arguments[0][i], arguments[1][i]);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;return allElementsEqual;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp; &lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;//对象&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;if (arguments[0] instanceof Object &amp;amp;&amp;amp; arguments[1] instanceof Object)&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;var result = true;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;var attributeLengthA = 0, attributeLengthB = 0;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;for (var o in arguments[0])&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (typeof arguments[0][o] == 'number' || typeof arguments[0][o] == 'string'){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;result = eval(&amp;quot;arguments[0]['&amp;quot; + o + &amp;quot;'] == arguments[1]['&amp;quot; + o + &amp;quot;']&amp;quot;);&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (result==false){break;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}else {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (!arguments.callee(eval(&amp;quot;arguments[0]['&amp;quot; + o + &amp;quot;']&amp;quot;), eval(&amp;quot;arguments[1]['&amp;quot; + o + &amp;quot;']&amp;quot;)))&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;result = false;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return result;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;++attributeLengthA;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;for (var o in arguments[1]) {&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;++attributeLengthB;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;if (attributeLengthA != attributeLengthB){&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;result = false;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;return result;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;return arguments[0] == arguments[1];&lt;/li&gt;
&lt;li&gt;&amp;nbsp; }&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;h2  class=&quot;related_post_title&quot;&gt;这些文章或许你也喜欢...&lt;/h2&gt;&lt;ul class=&quot;related_post&quot;&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=437&quot; title=&quot;网瘾，kappa女及其他&quot;&gt;网瘾，kappa女及其他&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=350&quot; title=&quot;生活中自我防卫的一些习惯&quot;&gt;生活中自我防卫的一些习惯&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=513&quot; title=&quot;Div+Css实例教程：规划网站(1)&quot;&gt;Div+Css实例教程：规划网站(1)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=85&quot; title=&quot;Wordpress运行代码插件runcode&quot;&gt;Wordpress运行代码插件runcode&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=776&quot; title=&quot;iPhone 和联通已经谈妥，上海首站？&quot;&gt;iPhone 和联通已经谈妥，上海首站？&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=378&quot; title=&quot;其实，我们可以做得更好 &quot;&gt;其实，我们可以做得更好 &lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/eQeX_vGR-A4I4sgSZfuJL7mFDxg/0/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/eQeX_vGR-A4I4sgSZfuJL7mFDxg/0/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/eQeX_vGR-A4I4sgSZfuJL7mFDxg/1/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/eQeX_vGR-A4I4sgSZfuJL7mFDxg/1/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/FangLeo/~4/P3D72HuvH7o&quot; height=&quot;1&quot; width=&quot;1&quot;/&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/475622279/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/P3D72HuvH7o/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622279/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622279/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.fangleo.cn/?feed=rss2&amp;p=1288</wfw:commentRss><slash:comments>0</slash:comments><feedburner:origLink>http://www.fangleo.cn/?p=1288</feedburner:origLink><description>之前有的需求，就是减少自动更新的数据请求量，主要是针对需要及时更新数据的模块属于隐藏或者其parent是隐藏的状况。这种情况下，数据不需要更新，直到这个模块被切换到显示为止。
这...&lt;img src=&quot;http://www1.feedsky.com/t1/475622279/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/P3D72HuvH7o/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622279/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622279/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>懒得分类</category><pubDate>Fri, 06 Aug 2010 16:58:11 +0800</pubDate><author>Leo</author><comments>http://www.fangleo.cn/?p=1288#comments</comments><guid isPermaLink="false">http://www.fangleo.cn/?p=1288</guid><dc:creator>Leo</dc:creator><fs:srclink>http://feedproxy.google.com/~r/FangLeo/~3/P3D72HuvH7o/</fs:srclink><fs:srcfeed>http://feedproxy.google.com/FangLeo</fs:srcfeed><fs:itemid>feedsky/anjing/~7211472/475622279/5100748</fs:itemid></item><item><title>ASP.NET接受Request.QueryString的乱码解决办法</title><link>http://feedproxy.google.com/~r/FangLeo/~3/ZyM58HCxg3c/</link><content:encoded>&lt;p&gt;简单说明一下问题，js跳转过来的地址，用.net接受，通过querystring提取参数返回乱码。环境均为GB2312(webconfig配置和js编码)。&lt;/p&gt;
&lt;p&gt;比如下面这串地址：go.aspx?name=%E5%BB%BA%E6%96%B0%E8%82%A1%E4%BB%BD&lt;/p&gt;
&lt;p&gt;如果直接用HttpContext.Current.Request.QueryString[&quot;name&quot;]取值，通常乱码（在上述环境中。）那么是我用js直接window.open(&amp;#8216;go.aspx?name=&amp;#8217;+encodeURI(&amp;#8220;建新股份&amp;#8221;))过来的。&lt;/p&gt;
&lt;p&gt;通常会用HttpUtility.UrlDecode，或Server.UrlDecode来解码，但问题是，一般情况下，他会乱码。在解码之前，接受到的参数，已经是乱码了。此时解码毫无意义。所以向前追溯，在接收前解码？&lt;span id=&quot;more-1286&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;解决比较简单，因为调试的时候我发现HttpContext.Current.Request.Url没有乱码，很好，我们就从这里入手。&lt;/p&gt;
&lt;p&gt;NameValueCollection utf8Requests;&lt;br /&gt;
utf8Requests =  HttpUtility.ParseQueryString(Request.Url.Query, Encoding.GetEncoding(&amp;#8220;utf-8&amp;#8243;));&lt;/p&gt;
&lt;p&gt;或&lt;/p&gt;
&lt;p&gt;NameValueCollection gb2312Requests;&lt;br /&gt;
gb2312Requests =  HttpUtility.ParseQueryString(Request.Url.Query, Encoding.GetEncoding(&amp;#8220;gb2312&amp;#8243;));&lt;/p&gt;
&lt;p&gt;请尝试，因为你也不能完全确定你环境的编码。上述我的问题中，%E5%BB%BA%E6%96%B0%E8%82%A1%E4%BB%BD是uft-8编码，而我的环境是gb2312的，所以我用了utf8Requests，然后：&lt;/p&gt;
&lt;p&gt;HttpContext.Current.Response.Write(utf8Requests[&quot;name&quot;] + &amp;#8220;&amp;lt;br /&amp;gt;&amp;#8221;);&lt;/p&gt;
&lt;p&gt;或&lt;br /&gt;
HttpContext.Current.Response.Write(HttpUtility.UrlDecode(utf8Requests[&quot;name&quot;]) + &amp;#8220;&amp;lt;br /&amp;gt;&amp;#8221;);&lt;/p&gt;
&lt;p&gt;或&lt;br /&gt;
HttpContext.Current.Response.Write(Server.UrlDecode(utf8Requests[&quot;name&quot;]) + &amp;#8220;&amp;lt;br /&amp;gt;&amp;#8221;);&lt;/p&gt;
&lt;p&gt;问题解决。&lt;/p&gt;
&lt;h2  class=&quot;related_post_title&quot;&gt;这些文章或许你也喜欢...&lt;/h2&gt;&lt;ul class=&quot;related_post&quot;&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=1281&quot; title=&quot;createDocumentFragment的用法&quot;&gt;createDocumentFragment的用法&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=598&quot; title=&quot;如何准确获取指定元素 CSS 属性值&quot;&gt;如何准确获取指定元素 CSS 属性值&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=805&quot; title=&quot;浮动元素容器的clearing问题&quot;&gt;浮动元素容器的clearing问题&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=326&quot; title=&quot;人生中，比较惨白的那一部分&quot;&gt;人生中，比较惨白的那一部分&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=523&quot; title=&quot;Div+css实例教程：网页布局与div浮动等（4）&quot;&gt;Div+css实例教程：网页布局与div浮动等（4）&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.fangleo.cn/?p=211&quot; title=&quot;80后做到了这30条，那么你就成熟了[ 转载]&quot;&gt;80后做到了这30条，那么你就成熟了[ 转载]&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/wxvnRJKptN7KY7IOAbvALAIdmvw/0/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/wxvnRJKptN7KY7IOAbvALAIdmvw/0/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://feedads.g.doubleclick.net/~a/wxvnRJKptN7KY7IOAbvALAIdmvw/1/da&quot;&gt;&lt;img src=&quot;http://feedads.g.doubleclick.net/~a/wxvnRJKptN7KY7IOAbvALAIdmvw/1/di&quot; border=&quot;0&quot; ismap=&quot;true&quot;&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/FangLeo/~4/ZyM58HCxg3c&quot; height=&quot;1&quot; width=&quot;1&quot;/&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/475622280/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/ZyM58HCxg3c/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622280/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622280/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><wfw:commentRss>http://www.fangleo.cn/?feed=rss2&amp;p=1286</wfw:commentRss><slash:comments>0</slash:comments><feedburner:origLink>http://www.fangleo.cn/?p=1286</feedburner:origLink><description>简单说明一下问题，js跳转过来的地址，用.net接受，通过querystring提取参数返回乱码。环境均为GB2312(webconfig配置和js编码)。
比如下面这串地址：go.aspx?name=%E5%BB%BA%E6%96%B0%E8%82%A1%E4%BB%BD
如果直接...&lt;img src=&quot;http://www1.feedsky.com/t1/475622280/anjing/feedsky/s.gif?r=http://feedproxy.google.com/~r/FangLeo/~3/ZyM58HCxg3c/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/anjing/475622280/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/anjing/475622280/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><category>encodeURI</category><category>乱码</category><category>懒得分类</category><pubDate>Tue, 03 Aug 2010 16:01:05 +0800</pubDate><author>Leo</author><comments>http://www.fangleo.cn/?p=1286#comments</comments><guid isPermaLink="false">http://www.fangleo.cn/?p=1286</guid><dc:creator>Leo</dc:creator><fs:srclink>http://feedproxy.google.com/~r/FangLeo/~3/ZyM58HCxg3c/</fs:srclink><fs:srcfeed>http://feedproxy.google.com/FangLeo</fs:srcfeed><fs:itemid>feedsky/anjing/~7211472/475622280/5100748</fs:itemid></item></channel></rss>
