<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>夏海霞的网络日志</title>
	<atom:link href="http://www.xiahaixia.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.xiahaixia.com</link>
	<description>我就是独一无二的特殊者。一楼，一桥，一路</description>
	<lastBuildDate>Mon, 29 Aug 2011 02:45:39 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Nginx502 bad gateway</title>
		<link>http://www.xiahaixia.com/2011/08/29/nginx502-bad-gateway/</link>
		<comments>http://www.xiahaixia.com/2011/08/29/nginx502-bad-gateway/#comments</comments>
		<pubDate>Mon, 29 Aug 2011 02:45:39 +0000</pubDate>
		<dc:creator>amanda</dc:creator>
				<category><![CDATA[工作]]></category>
		<category><![CDATA[Ngnix502]]></category>

		<guid isPermaLink="false">http://www.xiahaixia.com/?p=325</guid>
		<description><![CDATA[发了这么多次的版本，还是第一次这么悲剧的扯了这么长时间，虽然距离这个悲催的日子已有段时间，为了纪念，有必要记录一下，以免下次再犯。 用httpwatch监测发现，部分请求回来为502 bad gateway，运维发现，请求还没有到达服务端就已经错误返回了。运行一个简单的php文件，那还都是正常的，让其重启，发现问题依旧啊，后来换了个运维，重启之后竟然正常了，╮(╯▽╰)╭。 网上查看，php-fpm的默认静态处理方式会使得php-cgi的进程长期占用内存而无法释放，这也是导致nginx出错的原因之一。 据分析 with the help of memory_limit to 256M, max_execution_time=300s and fastcgi_read_timeout=240s 查了下原因可能是上面三个 不过我刚只重启了下php，没改配置，php-fpm可能假死了。 资料详情： 我的VPS是256M的内存，CPU是四核心的，所以更多的我会在乎内存。而在我调试服务器的时候通常会遇到Nginx502 bad gateway和504 Gateway Time-out的错误。分析nginx.conf我发现server和fastcgi的buffers过多，导致fastcgi请求的数量过大，php-fpm无法及时处理而出错。循此思路我们可以再总体buffers不变的情况下减少请求数量，具体的ningx.conf改动细节如下： 程序代码                server_names_hash_bucket_size 128; client_header_buffer_size 32k; large_client_header_buffers 1 128k;# 4 32k client_max_body_size 8m; sendfile on; tcp_nopush     on; keepalive_timeout 60; tcp_nodelay on; fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300; fastcgi_buffer_size 128k; fastcgi_buffers 2 256k;#8 128 [...]]]></description>
			<content:encoded><![CDATA[<p>发了这么多次的版本，还是第一次这么悲剧的扯了这么长时间，虽然距离这个悲催的日子已有段时间，为了纪念，有必要记录一下，以免下次再犯。</p>
<p>用httpwatch监测发现，部分请求回来为502 bad gateway，运维发现，请求还没有到达服务端就已经错误返回了。运行一个简单的php文件，那还都是正常的，让其重启，发现问题依旧啊，后来换了个运维，重启之后竟然正常了，╮(╯▽╰)╭。</p>
<p>网上查看，php-fpm的默认静态处理方式会使得php-cgi的进程长期占用内存而无法释放，这也是导致nginx出错的原因之一。</p>
<p>据分析</p>
<pre>with the help of memory_limit to 256M, max_execution_time=300s
and fastcgi_read_timeout=240s 查了下原因可能是上面三个
不过我刚只重启了下php，没改配置，php-fpm可能假死了。</pre>
<p>资料详情：</p>
<p>我的VPS是256M的内存，CPU是四核心的，所以更多的我会在乎内存。而在我调试服务器的时候通常会遇到Nginx502 bad gateway和504 Gateway Time-out的错误。分析nginx.conf我发现server和fastcgi的buffers过多，导致fastcgi请求的数量过大，php-fpm无法及时处理而出错。循此思路我们可以再总体buffers不变的情况下减少请求数量，具体的ningx.conf改动细节如下：<br />
程序代码                server_names_hash_bucket_size 128;<br />
client_header_buffer_size 32k;<br />
large_client_header_buffers 1 128k;# 4 32k<br />
client_max_body_size 8m;</p>
<p>sendfile on;<br />
tcp_nopush     on;</p>
<p>keepalive_timeout 60;</p>
<p>tcp_nodelay on;</p>
<p>fastcgi_connect_timeout 300;<br />
fastcgi_send_timeout 300;<br />
fastcgi_read_timeout 300;<br />
fastcgi_buffer_size 128k;<br />
fastcgi_buffers 2 256k;#8 128<br />
fastcgi_busy_buffers_size 256k;<br />
fastcgi_temp_file_write_size 256k;<br />
fastcgi_intercept_errors on;</p>
<p>gzip on;<br />
gzip_min_length  1k;<br />
gzip_buffers     1 64k; #4 16<br />
gzip_http_version 1.0;<br />
gzip_comp_level 2;<br />
gzip_types       text/plain application/x-javascript text/css application/xml;<br />
gzip_vary on;<br />
另外，php-fpm的默认静态处理方式会使得php-cgi的进程长期占用内存而无法释放，这也是导致nginx出错的原因之一，因此可以将php-fpm的处理方式改成apache模式。<br />
程序代码&lt;value name=”style”&gt;apache-like&lt;/value&gt;<br />
从更改完毕到现在的测试表明上述方式的效果还是很明显的，并没有发现一次Nginx502 bad gateway或504 Gateway Time-out错误。当然，如果你的VPS或者服务器的性能足够好可以根据具体情况不必做无谓的改动。</p>
<p><a href="http://www.ntsafe.com/html/jishuziliao/caozuoxitong/20100113/97.html">http://www.ntsafe.com/html/jishuziliao/caozuoxitong/20100113/97.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.xiahaixia.com/2011/08/29/nginx502-bad-gateway/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JavaScript 全局对象参考手册</title>
		<link>http://www.xiahaixia.com/2011/08/25/javascript-%e5%85%a8%e5%b1%80%e5%af%b9%e8%b1%a1%e5%8f%82%e8%80%83%e6%89%8b%e5%86%8c/</link>
		<comments>http://www.xiahaixia.com/2011/08/25/javascript-%e5%85%a8%e5%b1%80%e5%af%b9%e8%b1%a1%e5%8f%82%e8%80%83%e6%89%8b%e5%86%8c/#comments</comments>
		<pubDate>Thu, 25 Aug 2011 03:55:55 +0000</pubDate>
		<dc:creator>amanda</dc:creator>
				<category><![CDATA[js基础]]></category>

		<guid isPermaLink="false">http://www.xiahaixia.com/?p=322</guid>
		<description><![CDATA[前言：setTimeout与setInterval是window对象的两个非常神奇方法，用于实现定时或延时调用一个函数或一段代码。 （有人可能认为setTimeout与setInterval是javascript函数，这是错误的。这是将javascript对象函数与DOM对象方法混淆所致。） &#160; 全局属性和函数可用于所有内建的 JavaScript 对象。 顶层函数（全局函数） FF: Firefox, IE: Internet Explorer 函数 描述 FF IE decodeURI() 解码某个编码的 URI。 1 5.5 decodeURIComponent() 解码一个编码的 URI 组件。 1 5.5 encodeURI() 把字符串编码为 URI。 1 5.5 encodeURIComponent() 把字符串编码为 URI 组件。 1 5.5 escape() 对字符串进行编码。 1 3 eval() 计算 JavaScript 字符串，并把它作为脚本代码来执行。 1 3 getClass() 返回一个 JavaObject 的 JavaClass。 isFinite() 检查某个值是否为有穷大的数。 [...]]]></description>
			<content:encoded><![CDATA[<p>前言：setTimeout与setInterval是window对象的两个非常神奇方法，用于实现定时或延时调用一个函数或一段代码。<br />
（有人可能认为setTimeout与setInterval是javascript函数，这是错误的。这是将javascript对象函数与DOM对象方法混淆所致。）</p>
<p>&nbsp;</p>
<div>
<p>全局属性和函数可用于所有内建的 JavaScript 对象。</p>
</div>
<div>
<h2>顶层函数（全局函数）</h2>
<p>FF: Firefox, IE: Internet Explorer</p>
<table>
<tbody>
<tr>
<th>函数</th>
<th>描述</th>
<th>FF</th>
<th>IE</th>
</tr>
<tr>
<td><a href="/js/jsref_decodeURI.asp">decodeURI()</a></td>
<td>解码某个编码的 URI。</td>
<td>1</td>
<td>5.5</td>
</tr>
<tr>
<td><a href="/js/jsref_decodeURIComponent.asp">decodeURIComponent()</a></td>
<td>解码一个编码的 URI 组件。</td>
<td>1</td>
<td>5.5</td>
</tr>
<tr>
<td><a href="/js/jsref_encodeuri.asp">encodeURI()</a></td>
<td>把字符串编码为 URI。</td>
<td>1</td>
<td>5.5</td>
</tr>
<tr>
<td><a href="/js/jsref_encodeURIComponent.asp">encodeURIComponent()</a></td>
<td>把字符串编码为 URI 组件。</td>
<td>1</td>
<td>5.5</td>
</tr>
<tr>
<td><a href="/js/jsref_escape.asp">escape()</a></td>
<td>对字符串进行编码。</td>
<td>1</td>
<td>3</td>
</tr>
<tr>
<td><a href="/js/jsref_eval.asp">eval()</a></td>
<td>计算 JavaScript 字符串，并把它作为脚本代码来执行。</td>
<td>1</td>
<td>3</td>
</tr>
<tr>
<td><a href="/js/jsref_getClass.asp">getClass()</a></td>
<td>返回一个 JavaObject 的 JavaClass。</td>
<td></td>
<td></td>
</tr>
<tr>
<td><a href="/js/jsref_isFinite.asp">isFinite()</a></td>
<td>检查某个值是否为有穷大的数。</td>
<td>1</td>
<td>4</td>
</tr>
<tr>
<td><a href="/js/jsref_isNaN.asp">isNaN()</a></td>
<td>检查某个值是否是数字。</td>
<td>1</td>
<td>3</td>
</tr>
<tr>
<td><a href="/js/jsref_number.asp">Number()</a></td>
<td>把对象的值转换为数字。</td>
<td>1</td>
<td></td>
</tr>
<tr>
<td><a href="/js/jsref_parseFloat.asp">parseFloat()</a></td>
<td>解析一个字符串并返回一个浮点数。</td>
<td>1</td>
<td>3</td>
</tr>
<tr>
<td><a href="/js/jsref_parseInt.asp">parseInt()</a></td>
<td>解析一个字符串并返回一个整数。</td>
<td>1</td>
<td>3</td>
</tr>
<tr>
<td><a href="/js/jsref_string.asp">String()</a></td>
<td>把对象的值转换为字符串。</td>
<td>1</td>
<td></td>
</tr>
<tr>
<td><a href="/js/jsref_unescape.asp">unescape()</a></td>
<td>对由 escape() 编码的字符串进行解码。</td>
</tr>
</tbody>
</table>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.xiahaixia.com/2011/08/25/javascript-%e5%85%a8%e5%b1%80%e5%af%b9%e8%b1%a1%e5%8f%82%e8%80%83%e6%89%8b%e5%86%8c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WORDPRESS上传文件时提示“上传的文件无法转移到…”问题</title>
		<link>http://www.xiahaixia.com/2011/08/16/wordpress%e4%b8%8a%e4%bc%a0%e6%96%87%e4%bb%b6%e6%97%b6%e6%8f%90%e7%a4%ba%e2%80%9c%e4%b8%8a%e4%bc%a0%e7%9a%84%e6%96%87%e4%bb%b6%e6%97%a0%e6%b3%95%e8%bd%ac%e7%a7%bb%e5%88%b0%e2%80%a6%e2%80%9d%e9%97%ae/</link>
		<comments>http://www.xiahaixia.com/2011/08/16/wordpress%e4%b8%8a%e4%bc%a0%e6%96%87%e4%bb%b6%e6%97%b6%e6%8f%90%e7%a4%ba%e2%80%9c%e4%b8%8a%e4%bc%a0%e7%9a%84%e6%96%87%e4%bb%b6%e6%97%a0%e6%b3%95%e8%bd%ac%e7%a7%bb%e5%88%b0%e2%80%a6%e2%80%9d%e9%97%ae/#comments</comments>
		<pubDate>Tue, 16 Aug 2011 07:17:58 +0000</pubDate>
		<dc:creator>amanda</dc:creator>
				<category><![CDATA[wordpress]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[上传图片]]></category>
		<category><![CDATA[本地环境]]></category>

		<guid isPermaLink="false">http://www.xiahaixia.com/?p=317</guid>
		<description><![CDATA[本机windows环境，在apache非根目录下安装了wordpress3.2中文版本，上传图片时出现提示“上传的文件无法转移到...”，因为是win环境，所以肯定是非权限问题，仔细注意图片，发现图片的名字是中文名，换了个英文名就可以上传了，不过本blog更新到3.2版本，没有发现这种情况，中文名图片照样正常上传。等有空的时候看一下具体源码实现。]]></description>
			<content:encoded><![CDATA[<p>本机windows环境，在apache非根目录下安装了wordpress3.2中文版本，上传图片时出现提示“上传的文件无法转移到...”，因为是win环境，所以肯定是非权限问题，仔细注意图片，发现图片的名字是中文名，换了个英文名就可以上传了，不过本blog更新到3.2版本，没有发现这种情况，中文名图片照样正常上传。等有空的时候看一下具体源码实现。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.xiahaixia.com/2011/08/16/wordpress%e4%b8%8a%e4%bc%a0%e6%96%87%e4%bb%b6%e6%97%b6%e6%8f%90%e7%a4%ba%e2%80%9c%e4%b8%8a%e4%bc%a0%e7%9a%84%e6%96%87%e4%bb%b6%e6%97%a0%e6%b3%95%e8%bd%ac%e7%a7%bb%e5%88%b0%e2%80%a6%e2%80%9d%e9%97%ae/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>contentEditable和document.designMode的区别</title>
		<link>http://www.xiahaixia.com/2011/03/15/contenteditable%e5%92%8cdocument-designmode%e7%9a%84%e5%8c%ba%e5%88%ab/</link>
		<comments>http://www.xiahaixia.com/2011/03/15/contenteditable%e5%92%8cdocument-designmode%e7%9a%84%e5%8c%ba%e5%88%ab/#comments</comments>
		<pubDate>Tue, 15 Mar 2011 04:52:25 +0000</pubDate>
		<dc:creator>amanda</dc:creator>
				<category><![CDATA[工作]]></category>
		<category><![CDATA[contentEditable]]></category>
		<category><![CDATA[document.designMode]]></category>
		<category><![CDATA[document.domain]]></category>

		<guid isPermaLink="false">http://www.xiahaixia.com/?p=295</guid>
		<description><![CDATA[本来没打算写这篇的，但是每次被别人莫名的错误说是因为我们项目导致的，就会莫名的恼火。这年头推卸责任的人可真多，不追究根源的也不少。 因为document.domain的原因引起编辑器错误的产生，我脑中第一个就想到了document.designMode，于是好好整理了一下。 实现可视化编辑，可以使用contentEditable和designMode两种方法。contentEditable刚开始在IE上实现，后来各大 浏览器陆续支持contentEditable，HTML5标准也包含contentEditable。designMode只能把document整体 改成可编辑状态，但contentEditable可以把任何HTML元素改成可编辑状态，应用范围比designMode广，用 contentEditable是将来的趋势。 但在IE上designMode和contentEditable不完全一样，有不少细微的差距，我们开发可视化编辑器时需要格外注意。 1. 在IE上使用designMode，调用document.domain将报没有权限的错误，用contentEditable没有此问题。 2. 在IE上使用designMode，右键菜单没有复制、粘贴功能，出来的是普通网页的右键菜单。 3. 在IE6和IE7上使用contentEditable，在某些情况下焦点自动移动到编辑区域，类似focus()的效果。这个问题非常要命，因为很多时候我们不希望页面初始化时焦点跳到编辑区域里。 所以针对以上原因建议是IE下将页面设置成可编辑状态是document.body.contentEditable = true;非IE的浏览器是document.designMode="on"; &#160; 参考链接：http://luolonghao.javaeye.com/blog/693814 http://ued.alipay.com/wd/2008/11/08/js%E8%B7%A8%E5%9F%9F%E8%AE%BF%E9%97%AE%E6%93%8D%E4%BD%9Ciframe%E9%87%8C%E7%9A%84dom/]]></description>
			<content:encoded><![CDATA[<p>本来没打算写这篇的，但是每次被别人莫名的错误说是因为我们项目导致的，就会莫名的恼火。这年头推卸责任的人可真多，不追究根源的也不少。</p>
<p>因为document.domain的原因引起编辑器错误的产生，我脑中第一个就想到了document.designMode，于是好好整理了一下。</p>
<p>实现可视化编辑，可以使用contentEditable和designMode两种方法。contentEditable刚开始在IE上实现，后来各大 浏览器陆续支持contentEditable，HTML5标准也包含contentEditable。designMode只能把document整体 改成可编辑状态，但contentEditable可以把任何HTML元素改成可编辑状态，应用范围比designMode广，用 contentEditable是将来的趋势。</p>
<p>但在IE上designMode和contentEditable不完全一样，有不少细微的差距，我们开发可视化编辑器时需要格外注意。</p>
<p>1. 在IE上使用designMode，调用document.domain将报没有权限的错误，用contentEditable没有此问题。</p>
<p>2. 在IE上使用designMode，右键菜单没有复制、粘贴功能，出来的是普通网页的右键菜单。</p>
<p>3. 在IE6和IE7上使用contentEditable，在某些情况下焦点自动移动到编辑区域，类似focus()的效果。这个问题非常要命，因为很多时候我们不希望页面初始化时焦点跳到编辑区域里。</p>
<p>所以针对以上原因建议是IE下将页面设置成可编辑状态是document.body.contentEditable = true;非IE的浏览器是document.designMode="on";</p>
<p>&nbsp;</p>
<p>参考链接：http://luolonghao.javaeye.com/blog/693814</p>
<p>http://ued.alipay.com/wd/2008/11/08/js%E8%B7%A8%E5%9F%9F%E8%AE%BF%E9%97%AE%E6%93%8D%E4%BD%9Ciframe%E9%87%8C%E7%9A%84dom/</p>
]]></content:encoded>
			<wfw:commentRss>http://www.xiahaixia.com/2011/03/15/contenteditable%e5%92%8cdocument-designmode%e7%9a%84%e5%8c%ba%e5%88%ab/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>js 代码规范</title>
		<link>http://www.xiahaixia.com/2010/12/24/js-%e4%bb%a3%e7%a0%81%e8%a7%84%e8%8c%83/</link>
		<comments>http://www.xiahaixia.com/2010/12/24/js-%e4%bb%a3%e7%a0%81%e8%a7%84%e8%8c%83/#comments</comments>
		<pubDate>Fri, 24 Dec 2010 07:29:07 +0000</pubDate>
		<dc:creator>amanda</dc:creator>
				<category><![CDATA[生活]]></category>
		<category><![CDATA[js规范]]></category>

		<guid isPermaLink="false">http://www.xiahaixia.com/?p=290</guid>
		<description><![CDATA[Google JavaScript 编码规范指南: Google JavaScript 编码规范指南]]></description>
			<content:encoded><![CDATA[<p>Google JavaScript 编码规范指南: <a title="Google JavaScript 编码规范指南" href="http://kissyteam.github.com/docs/html/styleguide/google/javascriptguide.xml#JavaScript_%E7%BC%96%E7%A0%81%E9%A3%8E%E6%A0%BC">Google JavaScript 编码规范指南</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.xiahaixia.com/2010/12/24/js-%e4%bb%a3%e7%a0%81%e8%a7%84%e8%8c%83/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>不常用的css样式</title>
		<link>http://www.xiahaixia.com/2010/11/30/%e4%b8%8d%e5%b8%b8%e7%94%a8%e7%9a%84css%e6%a0%b7%e5%bc%8f/</link>
		<comments>http://www.xiahaixia.com/2010/11/30/%e4%b8%8d%e5%b8%b8%e7%94%a8%e7%9a%84css%e6%a0%b7%e5%bc%8f/#comments</comments>
		<pubDate>Tue, 30 Nov 2010 10:04:03 +0000</pubDate>
		<dc:creator>amanda</dc:creator>
				<category><![CDATA[生活]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[字体大小]]></category>

		<guid isPermaLink="false">http://www.xiahaixia.com/?p=287</guid>
		<description><![CDATA[记得以前遇到在chrome下的中文版本，字体无法应用小于12px的css样式，今天终于看到了解决方法。 @linxz428(林小志__linxz) 在中文版的chrome里，定义了小于12px的字体依然显示为12px. 解决办法:webkit的私有属性 html{-webkit-text-size-adjust:none;} 离完美又进了一步。]]></description>
			<content:encoded><![CDATA[<p>记得以前遇到在chrome下的中文版本，字体无法应用小于12px的css样式，今天终于看到了解决方法。</p>
<p>@linxz428(林小志__linxz) 在中文版的chrome里，定义了小于12px的字体依然显示为12px.<br />
解决办法:webkit的私有属性 html{-webkit-text-size-adjust:none;}</p>
<p>离完美又进了一步。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.xiahaixia.com/2010/11/30/%e4%b8%8d%e5%b8%b8%e7%94%a8%e7%9a%84css%e6%a0%b7%e5%bc%8f/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IE6下链接onclick事件处理中的请求被aborted</title>
		<link>http://www.xiahaixia.com/2010/11/19/ie6%e4%b8%8b%e9%93%be%e6%8e%a5onclick%e4%ba%8b%e4%bb%b6%e5%a4%84%e7%90%86%e4%b8%ad%e7%9a%84%e8%af%b7%e6%b1%82%e8%a2%ababorted/</link>
		<comments>http://www.xiahaixia.com/2010/11/19/ie6%e4%b8%8b%e9%93%be%e6%8e%a5onclick%e4%ba%8b%e4%bb%b6%e5%a4%84%e7%90%86%e4%b8%ad%e7%9a%84%e8%af%b7%e6%b1%82%e8%a2%ababorted/#comments</comments>
		<pubDate>Fri, 19 Nov 2010 07:26:25 +0000</pubDate>
		<dc:creator>amanda</dc:creator>
				<category><![CDATA[生活]]></category>
		<category><![CDATA[a]]></category>
		<category><![CDATA[aborted]]></category>
		<category><![CDATA[href]]></category>
		<category><![CDATA[ie6]]></category>

		<guid isPermaLink="false">http://www.xiahaixia.com/?p=285</guid>
		<description><![CDATA[一大早发现，ie6下点发起对话没法弹出窗口，ff浏览器就是可以的。开启HttpWatch检测，发现点击的被aborted。 查找资料显示aborted的原因如下。 The (Aborted) value is more complex in its origin. It occurs when IE has started to process the request for a URL (e.g. to download an image), but then decides to cancel the operation. Here are some examples of when this can occur: If you click on a link or bookmark while a [...]]]></description>
			<content:encoded><![CDATA[<p>一大早发现，ie6下点发起对话没法弹出窗口，ff浏览器就是可以的。开启HttpWatch检测，发现点击的被aborted。</p>
<p>查找资料显示aborted的原因如下。</p>
<p>The (Aborted) value is more complex in its origin. It occurs when IE  has started to process the request for a URL (e.g. to download an  image), but then decides to cancel the operation. Here are some examples  of when this can occur:</p>
<ol>
<li>If you click on a link or bookmark while a page is downloading,  or click on IE’s Stop button, you will see that IE cancels any requests  which are still active and HttpWatch shows the (Aborted) result.</li>
<li>A CSS  rollover image on a page will start a request when the mouse pointer is  moved into its active area. If the mouse pointer quickly moves away  again, IE may abort the request if it has not already completed.</li>
<li>Sometimes  javascript is used to fire off requests for background tasks or to  gather statistics on a page. Often this can lead to aborted results if  the javascript does not wait for the response to be received from the  server.</li>
</ol>
<p>继续寻找根源，搜索到发现这个问题是ie6中一个底层 机制的bug，之后的版本已经解决了。据说&lt;a href="javascript:void(0)"&gt;或者&lt;a  href=#"&gt;这样使用a标签的话并不能阻止a标签最后触发一个什么行为，导致ie6会错误的认为页面刷新或者重定向了，并且中断了当前所有连 接，这样新的加载就被aborted了。解决方案最简单的方法有两个，一个是这样使用a标签&lt;a href="xxx(); return false;"&gt;，另外一个就是用div替换a标签来用。至此，问题总算解决。</p>
<p>在开发中常使用&lt;a&gt;标签代替button，好处在于可以利用a:hover样式做mouseover效果，但下面的代码在IE6下就有问题，onclick中的请求被aborted。<br />
&lt;a href="javascript:void(0);" onclick="$('current').src='images/001.jpg';"&gt;切换图片&lt;/a&gt;，IE6下图片不显示。<br />
&lt;a href="javascript:void(0);" onclick="MyJrjRelation.checkAttention();"&gt;关注此人&lt;/a&gt;，IE6下请求失败。</p>
<p>解决方法：<br />
1. 不使用onclick，但必须保证处理函数不返回值，否则浏览器将清空页面，只显示函数的结果。如果checkAttention返回false，浏览器中就会显示false。<br />
&lt;a href="javascript:MyJrjRelation.checkAttention();"&gt;关注此人&lt;/a&gt;</p>
<p>&lt;a href="javascript:void(MyJrjRelation.checkAttention());"&gt;关注此人&lt;/a&gt;   void返回undefined；</p>
<p>2. 在onclick上加return false阻止浏览器执行href。href属性还是必须的，否则链接就样式失效了。<br />
&lt;a href="javascript:void(0);" onclick="MyJrjRelation.checkAttention();return false;"&gt;关注此人&lt;/a&gt;</p>
<p>总结来说&lt;a href="javascript:void(0);" onclick="MyJrjRelation.checkAttention();return false;"&gt;的兼容性最好。</p>
<p>相关知识链接http://www.cnblogs.com/zhyt1985/archive/2009/05/27/1490755.html，http://weizuqing1986-126-com.javaeye.com/blog/458141，http://blog.csdn.net/wangjj_016/archive/2010/02/10/5304784.aspx</p>
]]></content:encoded>
			<wfw:commentRss>http://www.xiahaixia.com/2010/11/19/ie6%e4%b8%8b%e9%93%be%e6%8e%a5onclick%e4%ba%8b%e4%bb%b6%e5%a4%84%e7%90%86%e4%b8%ad%e7%9a%84%e8%af%b7%e6%b1%82%e8%a2%ababorted/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>A的href和onclick</title>
		<link>http://www.xiahaixia.com/2010/11/17/a%e7%9a%84href%e5%92%8conclick/</link>
		<comments>http://www.xiahaixia.com/2010/11/17/a%e7%9a%84href%e5%92%8conclick/#comments</comments>
		<pubDate>Wed, 17 Nov 2010 04:46:07 +0000</pubDate>
		<dc:creator>amanda</dc:creator>
				<category><![CDATA[工作]]></category>
		<category><![CDATA[a]]></category>
		<category><![CDATA[href]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://www.xiahaixia.com/?p=280</guid>
		<description><![CDATA[今天一同事告诉我说，他写的&#60;a onclick="change_detail_show('name','place')"  href="javascript:;" &#62;点击&#60;/a&#62;在tt下无效，在ie和ff能通过。 解决方案是在onclick的函数后面加分号。JavaScript是弱语言类型，对语法检查不是很严格。但是很多浏览器对这个比较较真，有的浏览器就必须看到；才认为你是调用了一个方法。所以严格意义上来说你还是以后都给加上。这样是肯定不会有问题的。 相关知识补充： 今天在做一个点击事件的时候，用的是a标签的href="javascript:XXX(this)"来触发，发现怎么样都出错，很奇怪this居然没有 parentNode，后来试了一下，在XXX()中的第一句写上alert(obj==window),发现居然弹出true，也就是说，用 href="javascript:XXX(this)"来调用XXX()的时候，this指针并不是指向当前DOM对象的，而是指向window。用 onclick="XXX(this)"，再试试，发现这次就传对了。 在Javascript中void是一个操作符，该操作符指定要计算一个表达式但是不返回值。 void 操作符用法格式如下： 1. javascript:void (expression) 2. javascript:void expression expression 是一个要计算的 Javascript 标准的表达式。表达式外侧的圆括号是选的，但是写上去是一个好习惯。 (实现版本 Navigator 3.0) 你以使用 void 操作符指定超级链接。表达式会被计算但是不会当前文档处装入任何内容。 下面的代码创建了一个超级链接，当用户以后不会发生任何事。当用户链接时，void(0) 计算为 0，但 Javascript 上没有任何效果。 &#60;A HREF="javascript:void(0)"&#62;单此处什么也不会发生&#60;/A&#62; 下面的代码创建了一个超级链接，用户单时会提交表单。 &#60;A HREF="javascript:void(document.form.submit())"&#62; 单此处提交表单&#60;/A&#62; 下面代码则执行了subgo()函数， &#60;a href="javascript:void(0)" onclick="subgo()"&#62;点我&#60;/a&#62; 在这里，javascript:void(0),没启实质上的作用，它仅仅是一个死链接，执行的函数是subgo()。 &#60;a href="#" onclick="subgo()"&#62;点我&#60;/a&#62;与&#60;a href="javascript:void(0)" onclick="subgo()"&#62;点我&#60;/a&#62;区别。 实际上 #包含了一个位置信息默认的锚是#top 也就是网页的上端 ，而javascript:void(0) 仅仅表示一个死链接，没有任何信息。所以调用脚本的时候最好用void(0) [...]]]></description>
			<content:encoded><![CDATA[<p>今天一同事告诉我说，他写的&lt;a onclick="change_detail_show('name','place')"  href="javascript:;" &gt;点击&lt;/a&gt;在tt下无效，在ie和ff能通过。</p>
<p>解决方案是在onclick的函数后面加分号。JavaScript是弱语言类型，对语法检查不是很严格。但是很多浏览器对这个比较较真，有的浏览器就必须看到；才认为你是调用了一个方法。所以严格意义上来说你还是以后都给加上。这样是肯定不会有问题的。</p>
<p>相关知识补充：</p>
<p>今天在做一个点击事件的时候，用的是a标签的href="javascript:XXX(this)"来触发，发现怎么样都出错，很奇怪this居然没有 parentNode，后来试了一下，在XXX()中的第一句写上alert(obj==window),发现居然弹出true，也就是说，用 href="javascript:XXX(this)"来调用XXX()的时候，this指针并不是指向当前DOM对象的，而是指向window。用 onclick="XXX(this)"，再试试，发现这次就传对了。</p>
<p><span style="font-family: Arial;">在Javascript中void是一个操作符，该操作符指定要计算一个表达式但是不返回值。 </span></p>
<p><span style="font-family: Arial;">void 操作符用法格式如下：<br />
1. javascript:void (expression)<br />
2. javascript:void expression </span></p>
<p><span style="font-family: Arial;">expression 是一个要计算的 Javascript 标准的表达式。表达式外侧的圆括号是选的，但是写上去是一个好习惯。 (实现版本 Navigator 3.0) </span></p>
<p><span style="font-family: Arial;">你以使用 void 操作符指定超级链接。表达式会被计算但是不会当前文档处装入任何内容。 </span></p>
<p><span style="font-family: Arial;">下面的代码创建了一个超级链接，当用户以后不会发生任何事。当用户链接时，void(0) 计算为 0，但 Javascript 上没有任何效果。 </span></p>
<p><span style="font-family: Arial;">&lt;A HREF="javascript:void(0)"&gt;单此处什么也不会发生&lt;/A&gt; </span></p>
<p><span style="font-family: Arial;">下面的代码创建了一个超级链接，用户单时会提交表单。 </span></p>
<p><span style="font-family: Arial;">&lt;A HREF="javascript:void(document.form.submit())"&gt;<br />
单此处提交表单&lt;/A&gt; </span></p>
<p><span style="font-family: Arial;">下面代码则执行了subgo()函数，</span></p>
<p><span style="font-family: Arial;">&lt;a href="javascript:void(0)" onclick="subgo()"&gt;点我&lt;/a&gt;</span></p>
<p><span style="font-family: Arial;">在这里，javascript:void(0),没启实质上的作用，它仅仅是一个死链接，执行的函数是subgo()。</span></p>
<p><span style="font-family: Arial;">&lt;a href="#" onclick="subgo()"&gt;点我&lt;/a&gt;与&lt;a href="javascript:void(0)" onclick="subgo()"&gt;点我&lt;/a&gt;区别。</span></p>
<p><span style="font-family: Arial;">实际上 #包含了一个位置信息默认的锚是#top 也就是网页的上端 ，而javascript:void(0) 仅仅表示一个死链接，没有任何信息。所以调用脚本的时候最好用void(0) </span></p>
<p><span style="font-family: Arial;"> href一般是指向一个URL地址，也可以调用javascript  ,如href="javascript:xxx();",文档中推荐这样写：&lt;a href=" javascript:void(0)"  onclick="xxx();"&gt;xx&lt;/a&gt;,但是这种方法在复杂环境有时会产生奇怪的问题，尽量不要用javascript:协 议做为A的href属性，这样不仅会导致不必要的触发window.onbeforeunload事件，在IE里面更会使gif动画图片停止播放。</span></p>
<p><span style="font-family: Arial;"><strong> 我们知道链接的 onclick 事件被先执行，其次是 href  属性下的动作（页面跳转，或 javascript 伪链接），如果不想执行href 属性下的动作执行，onclick 需要要返回 false  ，一般是这样写onclick="xxx();return false;"</strong></span></p>
<p>相关知识链接：http://www.adanghome.com/?p=151，http://gocom.primeton.com/blog21307_27051.htm</p>
]]></content:encoded>
			<wfw:commentRss>http://www.xiahaixia.com/2010/11/17/a%e7%9a%84href%e5%92%8conclick/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JS window对象常用方法</title>
		<link>http://www.xiahaixia.com/2010/11/01/js-window%e5%af%b9%e8%b1%a1%e5%b8%b8%e7%94%a8%e6%96%b9%e6%b3%95/</link>
		<comments>http://www.xiahaixia.com/2010/11/01/js-window%e5%af%b9%e8%b1%a1%e5%b8%b8%e7%94%a8%e6%96%b9%e6%b3%95/#comments</comments>
		<pubDate>Mon, 01 Nov 2010 05:31:31 +0000</pubDate>
		<dc:creator>amanda</dc:creator>
				<category><![CDATA[生活]]></category>
		<category><![CDATA[js基础]]></category>

		<guid isPermaLink="false">http://www.xiahaixia.com/?p=276</guid>
		<description><![CDATA[前言：不管什么，基础才是最重要的。 窗口对象的属性和方法： 格式： [window.]属性 [window.]方法（参数） opener.属性 opener.方法（参数） self.属性 self.方法（参数） parent.属性 parent.方法（参数） top.属性 top.方法（参数） 窗口名称.属性 窗口名称.方法（参数） ---------------------------------------------------- ·  窗口对象的属性： document 当前文件的信息 location 当前URL的信息 name 窗口名称 status 状态栏的临时信息 defaultStatus 状态栏默认信息 history 该窗口最近查阅过的网页 closed 判断窗口是否关闭，返回布尔值 opner open方法打开的窗口的源窗口 outerHeight 窗口边界的垂直尺寸，px outerWidth 窗口边界的水平尺寸，px pageXOffset 网页x-position的位置 pageYOffset 网页y-position的位置 innerHeight 窗口内容区的垂直尺寸，px innerWidth 窗口内容区的水平尺寸，px screenX 窗口左边界的X坐标 screenY 窗口上边界的Y坐标 self 当前窗口 top 最上方的窗口 parent [...]]]></description>
			<content:encoded><![CDATA[<p>前言：不管什么，基础才是最重要的。</p>
<p>窗口对象的属性和方法：<br />
格式：</p>
<p>[window.]属性</p>
<p>[window.]方法（参数）</p>
<p>opener.属性</p>
<p>opener.方法（参数）</p>
<p>self.属性</p>
<p>self.方法（参数）</p>
<p>parent.属性</p>
<p>parent.方法（参数）</p>
<p>top.属性</p>
<p>top.方法（参数）</p>
<p>窗口名称.属性</p>
<p>窗口名称.方法（参数）</p>
<p>----------------------------------------------------</p>
<p>·  窗口对象的属性：</p>
<table border="0" cellpadding="0" width="500">
<tbody>
<tr>
<td width="160">document</td>
<td>当前文件的信息</td>
</tr>
<tr>
<td>location</td>
<td>当前URL的信息</td>
</tr>
<tr>
<td>name</td>
<td>窗口名称</td>
</tr>
<tr>
<td>status</td>
<td>状态栏的临时信息</td>
</tr>
<tr>
<td>defaultStatus</td>
<td>状态栏默认信息</td>
</tr>
<tr>
<td>history</td>
<td>该窗口最近查阅过的网页</td>
</tr>
<tr>
<td>closed</td>
<td>判断窗口是否关闭，返回布尔值</td>
</tr>
<tr>
<td>opner</td>
<td>open方法打开的窗口的源窗口</td>
</tr>
<tr>
<td>outerHeight</td>
<td>窗口边界的垂直尺寸，px</td>
</tr>
<tr>
<td>outerWidth</td>
<td>窗口边界的水平尺寸，px</td>
</tr>
<tr>
<td>pageXOffset</td>
<td>网页x-position的位置</td>
</tr>
<tr>
<td>pageYOffset</td>
<td>网页y-position的位置</td>
</tr>
<tr>
<td>innerHeight</td>
<td>窗口内容区的垂直尺寸，px</td>
</tr>
<tr>
<td>innerWidth</td>
<td>窗口内容区的水平尺寸，px</td>
</tr>
<tr>
<td>screenX</td>
<td>窗口左边界的X坐标</td>
</tr>
<tr>
<td>screenY</td>
<td>窗口上边界的Y坐标</td>
</tr>
<tr>
<td>self</td>
<td>当前窗口</td>
</tr>
<tr>
<td>top</td>
<td>最上方的窗口</td>
</tr>
<tr>
<td>parent</td>
<td>当前窗口或框架的框架组</td>
</tr>
<tr>
<td>frames</td>
<td>对应到窗口中的框架</td>
</tr>
<tr>
<td>length</td>
<td>框架的个数</td>
</tr>
<tr>
<td>locationbar</td>
<td>浏览器地址栏</td>
</tr>
<tr>
<td>menubar</td>
<td>浏览器菜单栏</td>
</tr>
<tr>
<td>scrollbars</td>
<td>浏览器滚动条</td>
</tr>
<tr>
<td>statusbar</td>
<td>浏览器状态栏</td>
</tr>
<tr>
<td>toolbar</td>
<td>浏览器工具栏</td>
</tr>
<tr>
<td>offscreenBuffering</td>
<td>是否更新窗口外的区域</td>
</tr>
<tr>
<td>personalbars</td>
<td>浏览器的个人工具栏，仅Navigator</td>
</tr>
</tbody>
</table>
<p>--------------------------------------------------------------------</p>
<p>窗口对象的方法：</p>
<table border="0" cellpadding="0" width="98%">
<tbody>
<tr>
<td width="300">alert(信息字串)</td>
<td>弹出警告信息</td>
</tr>
<tr>
<td>confirm(信息字串)</td>
<td>显示确认信息对话框</td>
</tr>
<tr>
<td>prompt(提示字串[，默认值])</td>
<td>显示提示信息，并提供可输入的字段</td>
</tr>
<tr>
<td>atob(译码字串)</td>
<td>对base-64编码字串进行译码</td>
</tr>
<tr>
<td>btoa(字串)</td>
<td>将进行base-64编码</td>
</tr>
<tr>
<td>back()</td>
<td>回到历史记录的上一网页</td>
</tr>
<tr>
<td>forward()</td>
<td>加载历史记录中的下一网页</td>
</tr>
<tr>
<td>open(URL，窗口名称[，窗口规格])</td>
<td></td>
</tr>
<tr>
<td>focus()</td>
<td>焦点移到该窗口</td>
</tr>
<tr>
<td>blur()</td>
<td>窗口转成背景</td>
</tr>
<tr>
<td>stop()</td>
<td>停止加载网页</td>
</tr>
<tr>
<td>close()</td>
<td></td>
</tr>
<tr>
<td>enableExternalCapture()</td>
<td>允许有框架的窗口获取事件</td>
</tr>
<tr>
<td>disableExternalCapture()</td>
<td>关闭enableExternalCapture()</td>
</tr>
<tr>
<td>captureEvents(事件类型)</td>
<td>捕捉窗口的特定事件</td>
</tr>
<tr>
<td>routeEvent(事件)</td>
<td>传送已捕捉的事件</td>
</tr>
<tr>
<td>handleEvent(事件)</td>
<td>使特定事件的处理生效</td>
</tr>
<tr>
<td>releaseEvents(事件类型)</td>
<td>释放已获取的事件</td>
</tr>
<tr>
<td>moveBy(水平点数，垂直点数)</td>
<td>相对定位</td>
</tr>
<tr>
<td>moveTo(x坐标，y坐标)</td>
<td>绝对定位</td>
</tr>
<tr>
<td>setResizable(true|false)</td>
<td>是否允许调整窗口大小</td>
</tr>
<tr>
<td>resizeBy(水平点数，垂直点数)</td>
<td>相对调整窗口大小</td>
</tr>
<tr>
<td>resizeTo(宽度，高度)</td>
<td>绝对调整窗口大小</td>
</tr>
<tr>
<td>scroll(x坐标，y坐标)</td>
<td>绝对滚动窗口</td>
</tr>
<tr>
<td>scrollBy(水平点数，垂直点数)</td>
<td>相对滚动窗口</td>
</tr>
<tr>
<td>scrollTo(x坐标，y坐标)</td>
<td>绝对滚动窗口</td>
</tr>
<tr>
<td>setInterval(表达式，毫秒)</td>
<td></td>
</tr>
<tr>
<td>setTimeout(表达式，毫秒)</td>
<td></td>
</tr>
<tr>
<td>clearInterval(定时器对象)</td>
<td></td>
</tr>
<tr>
<td>clearTimeout(定时器对象)</td>
<td></td>
</tr>
<tr>
<td>home()</td>
<td>进入浏览器设置的主页</td>
</tr>
<tr>
<td>find([字串[,caseSensitivr,backward]])</td>
<td>查找窗口中特定的字串</td>
</tr>
<tr>
<td>print()</td>
<td></td>
</tr>
<tr>
<td>setHotKeys(true|false)</td>
<td>激活或关闭组合键</td>
</tr>
<tr>
<td>setZOptions()</td>
<td>设置窗口重叠时的堆栈顺序</td>
</tr>
</tbody>
</table>
<p>--------------------------------------------------------------------------------------</p>
<p>1. open方法</p>
<p>语法格式：</p>
<p>window.open(URL,窗口名称,窗口风格)</p>
<p>功能：打开一个新的窗口，并在窗口中装载指定URL地址的网页。</p>
<p>说明：</p>
<p>open方法用于打开一个新的浏览器窗口，并在新窗口中装入一个指定的URL地址；</p>
<p>open方法在打开一个新的浏览器窗口时，还可以指定窗口的名称(第二个参数)；</p>
<p>open方法在打开一个新的浏览器窗口时，还可以指定窗口的风格(第三个参数)，</p>
<p>窗口风格有以下选项，这些选项可以多选，如果多选，各选项之间用逗号分隔：</p>
<p>toolbar：指定窗口是否有标准工具栏。当该选项的值为1或yes时，表示有标准工具栏，当该选项的值为0或no时，表示没有标准工具栏；</p>
<p>location：指定窗口是否有地址工具栏，选项的值及含义与toolbar相同；</p>
<p>directories：指定窗口是否有链接工具栏，选项的值及含义与toolbar相同；</p>
<p>status：指定窗口是否有状态栏，选项的值及含义与toolbar相同；</p>
<p>menubar：指定窗口是否有菜单，选项的值及含义与toolbar相同；</p>
<p>scrollbar：指定当前窗口文档大于窗口时是否有滚动条，选项的值及含义与toolbar相同；</p>
<p>resizable：指定窗口是否可改变大小，选项的值及含义与toolbar相同；</p>
<p>width：以像素为单位指定窗口的宽度，已被innerWidth取代；</p>
<p>height：以像素为单位指定窗口的高度，已被innerHeight取代；</p>
<p>outerWidth：以像素为单位指定窗口的外部宽度；</p>
<p>outerHeight：以像素为单位指定窗口的外部高度；</p>
<p>left：以像素为单位指定窗口距屏幕左边的位置；</p>
<p>top：以像素为单位指定窗口距屏幕顶端的位置；</p>
<p>alwaysLowered：指定窗口隐藏在所有窗口之后，选项的值及含义与toolbar相同；</p>
<p>alwaysRaised：指定窗口浮在所有窗口之上，选项的值及含义与toolbar相同；</p>
<p>dependent：指定打开的窗口为当前窗口的一个子窗口，并随着父窗口的关闭而关闭，选项的值及含义与toolbar相同；</p>
<p>hotkeys：在没有菜单栏的新窗口中设置安全退出的热键，选项的值及含义与toolbar相同；</p>
<p>innerHeight：设定窗口中文档的像素高度；</p>
<p>innerWidth：设定窗口中文档的像素宽度；</p>
<p>screenX：设定窗口距离屏幕左边界的像素长度；</p>
<p>screenY：设定窗口距离屏幕上边界的像素长度；</p>
<p>titleBar：指明标题栏是否在新窗口中可见，选项的值及含义与toolbar相同；</p>
<p>z-look：指明当窗口被激活时，不能浮在其它窗口之上，选项的值及含义与toolbar相同。</p>
<p>open方法返回的是该窗口的引用。</p>
<p>小技巧：该方法经常用于在打开一个网页时自动打开另一个窗口。</p>
<p>2. close方法</p>
<p>语法格式：</p>
<p>window.close()</p>
<p>功能：close方法用于自动关闭浏览器窗口。</p>
<p>3. alert方法</p>
<p>语法格式：</p>
<p>window.alert(提示字符串)</p>
<p>功能：弹出一个警告框，在警告框内显示提示字符串文本。</p>
<p>4. confirm方法</p>
<p>语法格式：</p>
<p>window.confirm(提示字符串)</p>
<p>功能：显示一个确认框，在确认框内显示提示字符串，当用户单击“确定”按钮</p>
<p>时该方法返回true，单击“取消”时返回false。</p>
<p>5. prompt方法</p>
<p>语法格式：</p>
<p>window.prompt(提示字符串，缺省文本)</p>
<p>功能：显示一个输入框，在输入框内显示提示字符串，在输入文本框显示缺省文</p>
<p>本，并等待用户输入，当用户单击“确定”按钮时，返回用户输入的字符串，当</p>
<p>单击“取消”按钮时，返回null值。</p>
<p>6. setTimeout方法</p>
<p>语法格式：</p>
<p>window.setTimeout(代码字符表达式,毫秒数)</p>
<p>功能：定时设置，当到了指定的毫秒数后，自动执行代码字符表达式。</p>
<p>7. clearTimeout方法</p>
<p>语法格式：</p>
<p>window.clearTimeout(定时器)</p>
<p>功能：取消以前的定时设置，其中的参数是用setTimeout设置时的返回值。</p>
<p>8. setInterval方法</p>
<p>语法格式：</p>
<p>window.setInterval(代码字符表达式,毫秒数)</p>
<p>功能：设定一个时间间隔后(第二个参数)，反复执行“代码字符表达式”的内容</p>
<p>9. clearInterval方法</p>
<p>语法格式：</p>
<p>window.clearInterval(时间间隔器)</p>
<p>功能：取消setInterval设置的定时。其中的参数是setInterval方法的返回值。</p>
<p>10. moveBy方法</p>
<p>语法格式：</p>
<p>window.moveBy(水平位移量,垂直位移量)</p>
<p>功能：按照给定像素参数移动指定窗口。第一个参数是窗口水平移动的像素，第</p>
<p>二个参数是窗口垂直移动的像素。</p>
<p>11.moveTo方法</p>
<p>语法格式：</p>
<p>window.moveTo(x,y)</p>
<p>功能：将窗口移动到指定的指定坐标(x,y)处。</p>
<p>12. resizeBy方法</p>
<p>语法格式：</p>
<p>window.resizeBy(水平,垂直)</p>
<p>功能：将当前窗口改变指定的大小(x,y)，当x、y的值大于0时为扩大，小于0时</p>
<p>为缩小。</p>
<p>13. resizeTo方法</p>
<p>语法格式：</p>
<p>window.resizeTo(水平宽度,垂直宽度)</p>
<p>功能：将当前窗口改变成(x,y)大小，x、y分别为宽度和高度。</p>
<p>14. scrollBy方法</p>
<p>语法格式：</p>
<p>window.scrollBy(水平位移量，垂直位移量)</p>
<p>功能：将窗口中的内容按给定的位移量滚动。参数为正数时，正向滚动，否则反</p>
<p>向滚动。</p>
<p>15. scrollTo方法</p>
<p>语法格式：</p>
<p>window.scrollTo(x,y)</p>
<p>功能：将窗口中的内容滚动到指定位置。</p>
<p>16.find方法</p>
<p>语法格式：</p>
<p>window.find()</p>
<p>功能：当触发该方法时，将弹出一个“find”(查找)对话窗口，并允许用户在触</p>
<p>发find方法的页面中查找一个字符串。</p>
<p>注：该属性在IE5.5及Netscape6.0中都不支持。</p>
<p>17. back方法</p>
<p>语法格式：</p>
<p>window.back()</p>
<p>功能：模拟用户点击浏览器上的“后退”按钮，将页面转到浏览器的上一页。</p>
<p>说明：仅当当前页面存在上一页时才能进行该操作。</p>
<p>注：IE5.5不支持该方法，Netscape6.0支持。</p>
<p>18. forward方法</p>
<p>语法格式：</p>
<p>window.forward()</p>
<p>功能：模拟用户点击浏览器上的“前进”按钮，将页面转到浏览器的下一页。</p>
<p>说明：仅当当前页面存在下一页时才能进行该操作。</p>
<p>注：IE5.5不支持该方法，Netscape6.0支持。</p>
<p>19. home方法</p>
<p>语法格式：</p>
<p>window.home()</p>
<p>功能：模拟用户点击浏览器上的“主页”按钮，将页面转到指定的页面上。</p>
<p>注：IE5.5不支持该方法，Netscape6.0支持。</p>
<p>20. stop方法</p>
<p>语法格式：</p>
<p>window.stop()</p>
<p>功能：模拟用户点击浏览器上的“停止”按钮，终止浏览器的下载操作。</p>
<p>注：IE5.5不支持该方法，Netscape6.0支持。</p>
<p>21. print方法</p>
<p>语法格式：</p>
<p>window.print()</p>
<p>功能：模拟用户点击浏览器上的“打印”按钮，通知浏览器打开打印对话框打印</p>
<p>当前页。</p>
<p>22. blur方法</p>
<p>语法格式：</p>
<p>window.blur()</p>
<p>功能：从窗口中移出焦点。当与focus方法合用时必须小心，因为可能导致焦点</p>
<p>不断移进移出。</p>
<p>23. focus方法</p>
<p>语法格式：</p>
<p>window.focus()</p>
<p>功能：使窗口中得到焦点。当与blur方法合用时必须小心，因为可能导致焦点不</p>
<p>断移进移出。</p>
<p>24. captureEvent方法</p>
<p>语法格式：</p>
<p>window.captureEvent(Event)</p>
<p>window.captureEvent(事件1|事件2|...|事件n)</p>
<p>功能：捕捉指定参数的所有事件。由于能够捕获哪些由本地程序自己处理的事件</p>
<p>，所以程序员可以随意定义函数来处理事件。如果有多个事件需要捕捉，各事件</p>
<p>之间用管道符“|”隔开。可捕捉的事件类型如下：</p>
<p>Event.ABORT</p>
<p>Event.BLUR</p>
<p>Event.CHANGE</p>
<p>Event.CLICK</p>
<p>Event.DBLCLICK</p>
<p>Event.DRAGDROP</p>
<p>Event.ERROR</p>
<p>Event.FOCUS</p>
<p>Event.KEYDOWN</p>
<p>Event.KEYPRESS</p>
<p>Event.KEYUP</p>
<p>Event.LOAD</p>
<p>Event.MOUSEDOWN</p>
<p>Event.MOUSUEMOVE</p>
<p>Event.MOUSEOUT</p>
<p>Event.MOUSEOVER</p>
<p>Event.MOUSEUP</p>
<p>Event.MOVE</p>
<p>Event.RESET</p>
<p>Event.RESIZE</p>
<p>Event.SELECT</p>
<p>Event.SUBMIT</p>
<p>Event.UNLOAD</p>
<p>25. enableExternalCapture事件</p>
<p>语法格式：</p>
<p>window.enableExternalCapture(event)</p>
<p>功能：enableExternalCapture方法用于捕捉通过参数传入的外部事件。</p>
<p>26. disableExternalCapture事件</p>
<p>语法格式：</p>
<p>window.disableExternalCapture()</p>
<p>功能：取消enableExternalCapture方法的设置，终止对外部事件的捕捉。</p>
<p>27. handleEvent事件</p>
<p>语法格式：</p>
<p>window.handleEvent(event)</p>
<p>功能：触发指定事件的事件处理器。</p>
<p>28. releaseEvent事件</p>
<p>语法格式：</p>
<p>window.releaseEvent(event)</p>
<p>window.releaseEvent(事件1|事件2|...|事件n)</p>
<p>功能：释放通过参数传入的已被捕捉的事件，这些事件是由</p>
<p>window.captureEvent方法设置的，可释放的事件与captureEvent相同。</p>
<p>29. routeEvent事件</p>
<p>语法格式：</p>
<p>window.releaseEvent(event)</p>
<p>功能：把被捕捉类型的所有事件转交给标准事件处理方法进行处理，可转交的事</p>
<p>件与captureEvent相同。</p>
<p>30 scroll事件</p>
<p>语法格式：</p>
<p>window.scroll(X坐标,Y坐标)</p>
<p>功能：将窗口移动到指定的坐标位置。</p>
<p>window对象具有如下属性：</p>
<p>status</p>
<p>statusbar</p>
<p>statusbar.visible</p>
<p>defaultstatus</p>
<p>location</p>
<p>locationbar</p>
<p>locationbar.visible</p>
<p>self</p>
<p>name</p>
<p>closed</p>
<p>frames</p>
<p>frames.length</p>
<p>length</p>
<p>document</p>
<p>history</p>
<p>innerHeight</p>
<p>innerWidth</p>
<p>menubar</p>
<p>menubar.visible</p>
<p>opener</p>
<p>outerHeight</p>
<p>outerWidth</p>
<p>pageXOffset</p>
<p>pageYOffset</p>
<p>parent</p>
<p>personalbar</p>
<p>personalbar.visible</p>
<p>scrollbar</p>
<p>scrollbar.visible</p>
<p>toolbar</p>
<p>toolbar.visible</p>
<p>top</p>
<p>1. status属性</p>
<p>语法格式：</p>
<p>window.status=字符串</p>
<p>功能：设置或给出浏览器窗口中状态栏的当前显示信息。</p>
<p>小技巧：可以使用该属性设置浏览器窗口状态栏信息。</p>
<p>2. statusbar属性</p>
<p>语法格式：</p>
<p>window.statusbar.属性</p>
<p>功能：statusbar属性本身也是一个对象，用于访问它自已的visible属性从而确定状态栏是否可见。</p>
<p>注：IE5.5浏览器不支持该属性。</p>
<p>3. statusbar.visible属性</p>
<p>语法格式：</p>
<p>window.statusbar.visible</p>
<p>功能：检查状态栏是否可见，如果可见则返回true，反之返回false。</p>
<p>注：IE5.5浏览器不支持该属性。</p>
<p>4. defaultstatus属性</p>
<p>语法格式：</p>
<p>window.defaultstatus[=字符串]</p>
<p>功能：defaultstatus属性值是浏览器窗中状态栏的默认显示信息。</p>
<p>5.location属性</p>
<p>语法格式：</p>
<p>window.location=URL</p>
<p>功能：给出当前窗口的URL信息或指定打开窗口的URL。</p>
<p>6. locationbar属性</p>
<p>语法格式：</p>
<p>window.locationbar.属性</p>
<p>功能：locationbar属性也可以看成是一个子对象，这个属性用来获取它自已的visible属性来确定位置栏是否可见。到目前为止，该属性只有一个子属性：visible。</p>
<p>注：IE5.5不支持该属性。</p>
<p>7. locationbar.visible属性</p>
<p>语法格式：</p>
<p>window.locationbar.visible</p>
<p>功能：返回位置栏是否可见，如果可见返回true，反之返回false。</p>
<p>注：IE5.5不支持该属性。</p>
<p>8. self属性</p>
<p>语法格式：</p>
<p>window.self.方法</p>
<p>window.self.属性</p>
<p>功能：该属性包含当前窗口的标志，利用这个属性，可以保证在多个窗口被打开的情况下，正确调用当前窗口内的函数或属性而不会发生混乱。</p>
<p>9. name属性</p>
<p>语法格式：</p>
<p>window.name=名称</p>
<p>功能：返回窗口名称，这个名称是由window.open()方法创建新窗口时给定的。在javascript1.0版本中，这个属性只能用于读取窗口名称，而到了javascript1.1版本时，可以用这个属性给一个不是用window.open()方法创建的窗口指定一个名称。</p>
<p>10. closed属性</p>
<p>语法格式：</p>
<p>window.closed</p>
<p>功能：closed属性用于返回指定窗口的实例是否已经关闭，如果关闭，返回true，反之返回flase。</p>
<p>11. frames属性</p>
<p>语法格式：</p>
<p>window.frames["框架名称"]</p>
<p>window.frames[数值]</p>
<p>功能：frames属性是一个数组，用来存储文档中每一个由元素创建的子窗口(框架)实例，其中的下标即可以是次序号也可以是用FRAME元素的NAME属性指定的名称来得到并使用。</p>
<p>12. frames.length属性</p>
<p>语法格式：</p>
<p>window.frames.length</p>
<p>功能：frames.length属性用于给出文档中子窗口(框架)实例的个数。</p>
<p>13. length属性</p>
<p>语法格式：</p>
<p>window.length</p>
<p>功能：length属性返回一个窗口内的子窗口数目，该属性与window.frame.length属性的值相同。</p>
<p>14. document属性</p>
<p>语法格式：</p>
<p>window.document.事件</p>
<p>window.document.方法</p>
<p>window.document.属性</p>
<p>功能：window对象的子对象document是javascript的核心对象，在脚本中遇到BODY元素时创建一个实例。</p>
<p>15. history属性</p>
<p>语法格式：</p>
<p>window.history[数值]</p>
<p>window.history.方法()</p>
<p>window.history.属性</p>
<p>window对象的子对象history是javascript的核心对象之一，该属性包含了一个已访问过页面的名称和URL的数组。</p>
<p>16. innerHeight属性</p>
<p>语法格式：</p>
<p>window.innerHeight=数值</p>
<p>功能：返回或指定浏览器窗口中文档的像素高度，这个高度不包括任何工具栏和组成窗口的页面修饰高度。</p>
<p>注：IE5.5不支持该属性。</p>
<p>17. innerWidth属性</p>
<p>语法格式：</p>
<p>window.innerHeight=数值</p>
<p>功能：返回或指定浏览器窗口中文档的像素宽度，这个宽度不包括任何工具栏和组成窗口的页面修饰宽度。</p>
<p>注：IE5.5不支持该属性。</p>
<p>18. menubar属性</p>
<p>语法格式：</p>
<p>window.menubar.属性</p>
<p>功能：menubar属性也可以看成是一个子对象，这个属性用来获取它自已的visible属性来确定菜单栏是否可见。到目前为止，该属性只有一个子属性：visible。</p>
<p>注：IE5.5不支持该属性。</p>
<p>19. menubar.visible属性</p>
<p>语法格式：</p>
<p>window.menubar.visible</p>
<p>功能：menubar.visible属性用于返回菜单栏是否可见，如果可见返回true，反之返回false。</p>
<p>注：IE5.5不支持该属性。</p>
<p>20. opener属性</p>
<p>语法格式：</p>
<p>window.opener</p>
<p>window.opener.方法</p>
<p>window.opener.属性</p>
<p>功能：opener属性与打开该窗口的父窗口相联系，当访问子窗口中operer属性时，返回的是父窗口。通过该属性，可以使用父窗口对象中的方法和属性。</p>
<p>21. outerHeight属性</p>
<p>语法格式：</p>
<p>window.outerHeight</p>
<p>功能：outerHeight属性用于访问浏览器窗口的像素高度，该高度包括工具栏和装饰边的高度。</p>
<p>注：IE5.5不支持该属性。</p>
<p>22. outerWidth属性</p>
<p>语法格式：</p>
<p>window.outerWidth</p>
<p>功能：outerWidth属性用于访问浏览器窗口的像素宽度，该宽度包括工具栏和装饰边的宽度。</p>
<p>注：IE5.5不支持该属性。</p>
<p>23. pageXOffset属性</p>
<p>语法格式：</p>
<p>window.pageXOffset=数值</p>
<p>功能：指定浏览器窗口中文档左上角在窗口中的当前水平像素位置。在利用moveTo移动之前，可以通过该属性来决定是否需要移动窗口。因为该属性返回了可见文档相对整个页面的当前位置。</p>
<p>注：IE5.5不支持该属性。</p>
<p>24. pageYOffset属性</p>
<p>语法格式：</p>
<p>window.pageYOffset=数值</p>
<p>功能：指定浏览器窗口中文档左上角在窗口中的当前垂直像素位置。在利用moveTo移动之前，可以通过该属性来决定是否需要移动窗口。因为该属性返回了可见文档相对整个页面的当前位置。</p>
<p>注：IE5.5不支持该属性。</p>
<p>25. parent属性</p>
<p>语法格式：</p>
<p>window.parent.frames[数值]</p>
<p>window.parent.framesName</p>
<p>功能：访问各个子窗口(多框架)所在的父窗口。</p>
<p>26. personalbar属性</p>
<p>语法格式：</p>
<p>window.personalbar.属性</p>
<p>功能：personalbar属性本身也是一个对象，用于访问其自身的visible属性来确定个人栏是否可见。</p>
<p>注：IE5.5不支持该属性。</p>
<p>27. personalbar.visible属性</p>
<p>语法格式：</p>
<p>window.personalbar.visible</p>
<p>功能：确定个人栏是否可见，如果可见则返回true，反之返回false。</p>
<p>注：IE5.5不支持该属性。</p>
<p>28. scrollbars属性</p>
<p>语法格式：</p>
<p>window.scrollbars.属性</p>
<p>功能：scrollbars属性本身也是一个对象，用于访问其自身的visible属性来确定滚动栏是否可见。</p>
<p>注：IE5.5不支持该属性。</p>
<p>29. scrollbars.visible属性</p>
<p>语法格式：</p>
<p>window.scrollbars.visible</p>
<p>功能：scrollbars.visible用于确定滚动栏是否可见，如果可见则返回true，反之返回false。</p>
<p>注：IE5.5不支持该属性。</p>
<p>30. toolbar属性</p>
<p>语法格式：</p>
<p>window.toolbar.属性</p>
<p>功能：toolbar属性本身也是一个对象，用于访问它自已的visible属性从而确定工具栏是否可见。</p>
<p>注：IE5.5不支持该属性。</p>
<p>31. toolbar.visible属性</p>
<p>语法格式：</p>
<p>window.toolbar.visible</p>
<p>功能：toolbar.visible属性用于检查工具栏是否可见，如果可见则返回true，反之返回false。</p>
<p>注：IE5.5不支持该属性。</p>
<p>32. top属性</p>
<p>语法格式：</p>
<p>window.top.frames[数值]</p>
<p>window.top.frameName</p>
<p>window.top.方法()</p>
<p>window.top.属性</p>
<p>功能：window对象的top属性用于包含所有装入浏览器的子窗口(多框架)的最顶层窗口的信息。</p>
<p>例1：</p>
<p>&lt;scrīpt&gt;</p>
<p>document.write ("文哥网络技术学习网");</p>
<p>open ('1.htm','','height=100,width=300');</p>
<p>&lt;/scrīpt&gt;</p>
<p>&lt;!-------- 1.htm --------&gt;</p>
<p>&lt;TITLE&gt;欢迎光临&lt;/TITLE&gt;</p>
<p>&lt;BODY &gt;</p>
<p>&lt;IMG SRC="images\welcome.gif" ALIGN="left"&gt;</p>
<p>&lt;CENTER&gt;</p>
<p>&lt;FONT COLOR="blue" SIZE="5"&gt;欢迎光临&lt;/FONT&gt;&lt;BR&gt;</p>
<p>这是一个技术研习的小天地&lt;BR&gt;</p>
<p>&lt;/CENTER&gt;</p>
<p>&lt;/BODY&gt;</p>
<p>例2：</p>
<p>&lt;scrīpt&gt;</p>
<p>document.write("文哥网络技术学习网")</p>
<p>helloWin = open ('1.htm','','height=100,width=300');</p>
<p>var line1 = "&lt;FONT COLOR='blue' SIZE='5'&gt;欢迎光临&lt;/FONT&gt;&lt;BR&gt;"</p>
<p>var line2 = "这是一个技术研习的小天地"</p>
<p>helloWin.document.write (line1 + line2)</p>
<p>helloWin.document.title = "欢迎光临"</p>
<p>&lt;/scrīpt&gt;</p>
<p>例3：</p>
<p>&lt;scrīpt&gt;</p>
<p>window.defaultStatus = "最棒的线上学习网站";</p>
<p>&lt;/scrīpt&gt;</p>
<p>&lt;A HREF="http://www.hubert.idv.tw" &gt;</p>
<p>文哥网路技术学习网&lt;/A&gt;</p>
<p>例4：</p>
<p>&lt;scrīpt&gt;</p>
<p>queryWin = open('1.htm','','height=100,')</p>
<p>&lt;/scrīpt&gt;</p>
<p>利用子窗口来改变母窗口的底色</p>
<p>/* -------- 1.htm -------- */</p>
<p>&lt;scrīpt&gt;</p>
<p>function passToOpener(color) {</p>
<p>opener.document.bgColor = color;</p>
<p>self.close();</p>
<p>}</p>
<p>&lt;/scrīpt&gt;</p>
<p>&lt;CENTER&gt;</p>
<p>请选择你喜欢的颜色?&lt;BR&gt;</p>
<p>&lt;FONT &gt; &gt;浅蓝色&lt;&lt;/FONT&gt;</p>
<p>&lt;FONT &gt; &gt;浅红色&lt;&lt;/FONT&gt;</p>
<p>&lt;/CENTER&gt;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.xiahaixia.com/2010/11/01/js-window%e5%af%b9%e8%b1%a1%e5%b8%b8%e7%94%a8%e6%96%b9%e6%b3%95/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>今天发生的事</title>
		<link>http://www.xiahaixia.com/2010/10/24/%e4%bb%8a%e5%a4%a9%e5%8f%91%e7%94%9f%e7%9a%84%e4%ba%8b/</link>
		<comments>http://www.xiahaixia.com/2010/10/24/%e4%bb%8a%e5%a4%a9%e5%8f%91%e7%94%9f%e7%9a%84%e4%ba%8b/#comments</comments>
		<pubDate>Sun, 24 Oct 2010 12:33:09 +0000</pubDate>
		<dc:creator>amanda</dc:creator>
				<category><![CDATA[生活]]></category>
		<category><![CDATA[租房]]></category>

		<guid isPermaLink="false">http://www.xiahaixia.com/?p=274</guid>
		<description><![CDATA[咚咚，咚咚，急剧的敲门声，于是我也从打开房门出去看，只见第一脚跨出房门，发现脚竟然浸在水里，心里一下明白了外面声音的缘由。 果不其然，门开后，一家子的人出现在客厅。以为只有传说中才会发生，没想到我们也遇上了。 有点委屈，漏水并不是忘记关掉水龙头，而是洗衣间的水漏出来的，但是毕竟我们有过，竟然溢出这么多水都不知道，果然房子的设计真的很重要，洗衣间的排水孔太小了。小记一下这生活的插曲。]]></description>
			<content:encoded><![CDATA[<p>咚咚，咚咚，急剧的敲门声，于是我也从打开房门出去看，只见第一脚跨出房门，发现脚竟然浸在水里，心里一下明白了外面声音的缘由。</p>
<p>果不其然，门开后，一家子的人出现在客厅。以为只有传说中才会发生，没想到我们也遇上了。</p>
<p>有点委屈，漏水并不是忘记关掉水龙头，而是洗衣间的水漏出来的，但是毕竟我们有过，竟然溢出这么多水都不知道，果然房子的设计真的很重要，洗衣间的排水孔太小了。小记一下这生活的插曲。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.xiahaixia.com/2010/10/24/%e4%bb%8a%e5%a4%a9%e5%8f%91%e7%94%9f%e7%9a%84%e4%ba%8b/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

