<?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>活着 &#187; javascript</title>
	<atom:link href="http://www.yetlive.com/tags/javascript/feed" rel="self" type="application/rss+xml" />
	<link>http://www.yetlive.com</link>
	<description>活着就好，认真生活每一天</description>
	<lastBuildDate>Fri, 30 Dec 2011 13:17:12 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>七个加快网页显示速度的方法</title>
		<link>http://www.yetlive.com/post/221.html</link>
		<comments>http://www.yetlive.com/post/221.html#comments</comments>
		<pubDate>Sat, 13 Jun 2009 07:46:11 +0000</pubDate>
		<dc:creator>认真生活</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[网页制作]]></category>

		<guid isPermaLink="false">http://www.d.zhangpeng.info/?p=221</guid>
		<description><![CDATA[续上一篇的seo之页面加载速度，也来说说如何优化网页以求提高网页显示速度，让你的搜索引擎排名更上一步。在这里我只是抛砖引玉，聊聊自己所能记住的一些加速的方法，方法不全，各位在优化页面的时候可以参考参考。 更换更为快速的服务器无疑是加速的最佳选择 前提是你有钱，这算最直接的网页提速方法了，省事，不需要对任何页面进行处理，缺点就是Money付出要增加了。 减少图片的应用 这点会一点基本知识的人都该知道，图片的大小和文字所占大小可不是一个数量级的东西，减少图片的应用，自然可以节省带宽资源，网页显示速度自然会加快。 合并JS 过多的JS调用需要占用一定的时间，合并JS之后则可以节省一点时间，所以尽量把多个JS合并为一个。 JS调用置于尾部&#60;/body&#62;之前伪加速 这是个掩耳盗铃的加速方法，事实上真是速度没有提高。通常JS在于控制一些特殊效果，然而用户通常关系页面的实际内容，JS放在底部，能够让用户更快的看到你的页面内容，当用户看完内容的时候，JS的特效也出来了。 将CSS放在尽量靠前的位置 CSS用于美化页面，放在最前面，可以在现实内容的同时也实现了页面的美化效果，而不是等所有文字一团糟的加载完了的时候突然出现各种美化效果，这虽然也未实际加快页面显示速度，却能让用户有种错觉，就是你的网页加载速度比较快了。 节省不必要的代码开支 这点通常效果不是那么明显，因为代码本身所占空间不是很大，不过对于页面代码、JS、CSS代码冗长的页面也是有一定作用的，对于CSS压缩可以使用本站提供的工具进行优化与压缩，地址在：http://www.yetlive.com/tools/css 控制非重点内容在底部 这就比如博客边栏，网民通常是不太需要这些信息的，可以尽量在写代码的时候写在页面底部正文内容之后，某些效果再以CSS实现，当然，这也只是伪加速的方法，因为真正的网页大小并未改变，同等网速下载时间也就不可能减少了]]></description>
			<content:encoded><![CDATA[<p>续上一篇的<a href="http://www.yetlive.com/post/speed-seo.html">seo之页面加载速度</a>，也来说说如何优化网页以求提高网页显示速度，让你的搜索引擎排名更上一步。在这里我只是抛砖引玉，聊聊自己所能记住的一些加速的方法，方法不全，各位在优化页面的时候可以参考参考。</p>
<p><span id="more-221"></span></p>
<h2>更换更为快速的服务器无疑是加速的最佳选择</h2>
<p>前提是你有钱，这算最直接的网页提速方法了，省事，不需要对任何页面进行处理，缺点就是Money付出要增加了。</p>
<h2>减少图片的应用</h2>
<p>这点会一点基本知识的人都该知道，图片的大小和文字所占大小可不是一个数量级的东西，减少图片的应用，自然可以节省带宽资源，网页显示速度自然会加快。</p>
<h2>合并JS</h2>
<p>过多的JS调用需要占用一定的时间，合并JS之后则可以节省一点时间，所以尽量把多个JS合并为一个。</p>
<h2>JS调用置于尾部&lt;/body&gt;之前伪加速</h2>
<p>这是个掩耳盗铃的加速方法，事实上真是速度没有提高。通常JS在于控制一些特殊效果，然而用户通常关系页面的实际内容，JS放在底部，能够让用户更快的看到你的页面内容，当用户看完内容的时候，JS的特效也出来了。</p>
<h2>将CSS放在尽量靠前的位置</h2>
<p><a href="http://www.yetlive.com/tags/css">CSS</a>用于美化页面，放在最前面，可以在现实内容的同时也实现了<a href="http://www.yetlive.com/post/theme-advise.html">页面的美化</a>效果，而不是等所有文字一团糟的加载完了的时候突然出现各种美化效果，这虽然也未实际加快页面显示速度，却能让用户有种错觉，就是你的网页加载速度比较快了。</p>
<h2>节省不必要的代码开支</h2>
<p>这点通常效果不是那么明显，因为代码本身所占空间不是很大，不过对于页面代码、JS、<a href="http://www.yetlive.com">CSS代码</a>冗长的页面也是有一定作用的，对于<a href="http://www.yetlive.com/tools/css" target="_blank">CSS压缩</a>可以使用本站提供的工具进行优化与压缩，地址在：<a href="http://www.yetlive.com/tools/css" target="_blank">http://www.yetlive.com/tools/css</a></p>
<h2>控制非重点内容在底部</h2>
<p>这就比如博客边栏，网民通常是不太需要这些信息的，可以尽量在写代码的时候写在页面底部正文内容之后，某些效果再以CSS实现，当然，这也只是伪加速的方法，因为真正的网页大小并未改变，同等网速下载时间也就不可能减少了</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yetlive.com/post/221.html/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>z-blog中添加多处留言评论框的解决方法</title>
		<link>http://www.yetlive.com/post/182.html</link>
		<comments>http://www.yetlive.com/post/182.html#comments</comments>
		<pubDate>Sat, 21 Mar 2009 18:16:27 +0000</pubDate>
		<dc:creator>认真生活</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[z-blog]]></category>

		<guid isPermaLink="false">http://www.d.zhangpeng.info/?p=182</guid>
		<description><![CDATA[昨日写了“ 博客留言少谁之过”一文，其中提到增加留言的方法，其中写到活着就在文章页面的侧栏添加了第二个快速留言功能。那么这个功能要怎么实现呢？ 说难不难，说容易也不容易。这里需要用到的两个东西主要是评论框模版和Javascript的自动添加功能，至于后者可以参考“自动填充文本输入框Javascript特效代码”一文。那么下面就来制作一下我们的第二个留言评论框吧。 1.制作Javascript功能函数 利用我们在“自动填充文本输入框Javascript特效代码”一文中介绍的函数，稍微进行修改得到如下的函数。 function refreshValue(a) { var s = a.value; var b = a.name; document.getElementById(b).value=s; } 把如上的代码保存好备用。 2.制作第二个留言评论框界面 首先，打开我们的评论框模版，也就是主题模版中的b_article_commentpost.html文件，复制其中的内容。 然后，做如下修改： &#60;form target=”_self” method=”post” action=”&#60;#article/commentposturl#&#62;” &#62; &#60;input type=”hidden” name=”inpId” value=”&#60;#article/id#&#62;” onkeyup=”refreshValue(this)” /&#62; &#60;input type=”hidden” name=”inpArticle” value=”" onkeyup=”refreshValue(this)” /&#62; &#60;input type=”hidden” name=”inpLocation” value=”" onkeyup=”refreshValue(this)” /&#62; &#60;p&#62; &#60;input type=”text” name=”inpName” class=”text” value=”" size=”25&#8243; tabindex=”1&#8243; onkeyup=”refreshValue(this)” /&#62; [...]]]></description>
			<content:encoded><![CDATA[<p>昨日写了“ <a href="http://www.yetlive.com/post/blog-comment.html" target="_blank">博客留言少谁之过</a>”一文，其中提到增加留言的方法，其中写到活着就在文章页面的侧栏添加了第二个快速留言功能。那么这个功能要怎么实现呢？</p>
<p><span id="more-182"></span></p>
<p>说难不难，说容易也不容易。这里需要用到的两个东西主要是评论框模版和Javascript的自动添加功能，至于后者可以参考“<a href="http://www.yetlive.com/post/Javascript-auto-fill-textbox.html" target="_blank">自动填充文本输入框Javascript特效代码</a>”一文。那么下面就来制作一下我们的第二个留言评论框吧。</p>
<h3>1.制作Javascript功能函数</h3>
<p>利用我们在“<a href="http://www.yetlive.com/post/Javascript-auto-fill-textbox.html" target="_blank">自动填充文本输入框Javascript特效代码</a>”一文中介绍的函数，稍微进行修改得到如下的函数。</p>
<p class="code"><code>function refreshValue(a) {<br />
var s = a.value;<br />
var b = a.name;<br />
document.getElementById(b).value=s;<br />
}</code></p>
<p>把如上的代码保存好备用。</p>
<h3>2.制作第二个留言评论框界面</h3>
<p>首先，打开我们的评论框模版，也就是主题模版中的b_article_commentpost.html文件，复制其中的内容。</p>
<p>然后，做如下修改：</p>
<p class="code">&lt;form target=”_self” method=”post” action=”&lt;#article/commentposturl#&gt;” &gt;<br />
&lt;input type=”hidden” name=”inpId” value=”&lt;#article/id#&gt;”  onkeyup=”refreshValue(this)”   /&gt;<br />
&lt;input type=”hidden” name=”inpArticle” value=”"   onkeyup=”refreshValue(this)”  /&gt;<br />
&lt;input type=”hidden” name=”inpLocation” value=”"  onkeyup=”refreshValue(this)”   /&gt;<br />
&lt;p&gt;       &lt;input type=”text” name=”inpName” class=”text” value=”" size=”25&#8243; tabindex=”1&#8243;  onkeyup=”refreshValue(this)”   /&gt;<br />
&lt;label for=”inpName”&gt;&lt;#ZC_MSG001#&gt;&lt;/label&gt;     &lt;/p&gt;<br />
&lt;p&gt;       &lt;input type=”text” name=”inpEmail” class=”text” value=”" size=”25&#8243; tabindex=”2&#8243;  title=”您的Email地址不被会被公开” onkeyup=”refreshValue(this)”   /&gt;       &lt;label for=”inpEmail”&gt;&lt;#ZC_MSG053#&gt;&amp;nbsp;&amp;nbsp;&lt;/label&gt;<br />
&lt;input type=”text” name=”inpHomePage” class=”text” value=”" size=”25&#8243; tabindex=”3&#8243; onkeyup=”refreshValue(this)”   /&gt;<br />
&lt;label for=”inpHomePage”&gt;&lt;#ZC_MSG054#&gt;&lt;/label&gt;     &lt;/p&gt;<br />
&lt;p&gt;       &lt;textarea name=”txaArticle” title=”留言最长字数1000&#8243; onChange=”GetActiveText(this.id);” onClick=”GetActiveText(this.id);” onFocus=”GetActiveText(this.id);” class=”mytext” cols=”50&#8243; rows=”4&#8243; tabindex=”5&#8243;  onkeyup=”refreshValue(this)”  &gt;&lt;/textarea&gt;     &lt;/p&gt;<br />
&lt;p&gt;       &lt;input name=”btnSumbit” type=”submit” tabindex=”6&#8243; value=”&lt;#ZC_MSG087#&gt;” onClick=”<a href="http://www.yetlive.com/tags/javascript" class="st_tag internal_tag" rel="tag" title="标签 javascript 下的日志">JavaScript</a>:return VerifyMessage()” class=”button”  /&gt;       &lt;input type=”checkbox” name=”chkRemember” value=”1&#8243; onkeyup=”refreshValue(this)”  /&gt;       &lt;label for=”chkRemember”&gt;&lt;span class=”justtips”&gt;下次回复不用重新输入个人信息&lt;/span&gt;&lt;/label&gt;     &lt;/p&gt;   &lt;/form&gt;</p>
<p>可以看到，以上仅仅在每个输入框添加了onkeyup=”refreshValue(this)”属性，而且把每个输入框的id属性去掉了。</p>
<p>将以上代码保存备用.</p>
<h3>3.直接在z-blog后台修改b_article_commentpost.html文件</h3>
<p>找到tabindex属性，文件中应该有5处，后面有一个数字分别为1、2、3、5、6，把这几个数字改为7、8、9、10、11。然后后台保存修改。</p>
<p>这样做的原因是当用户使用“Tab”键选择下一个输入框时能够以正确的顺序依次进行。</p>
<h3>4.在z-blog后台修改single.html文件</h3>
<p>将以上第一步保存的Javascript代码放入页面头部的&lt;script&gt;&lt;/script&gt;标签中。</p>
<p>把第二步保存的“留言评论框界面”界面放入single.html文件中你需要添加的位置。</p>
<p>保存以上修改。</p>
<h3>5.重建文件，美化第二个评论框</h3>
<p>后台选择文件重建就可以了，如果你还需要美化一下输出界面，可以使用CSS进行美化。</p>
<h3>6.注意事项</h3>
<p>第二个甚至第三个留言评论框不能直接拷贝b_article_commentpost.html文件内容，否则用你自己额外添加的输入框时将出现提示评论不正确的结果。</p>
<p>还有其他特殊功能，用户可自己在以上基础进行修改。以上就是<a href="http://www.yetlive.com/" target="_blank">活着</a>添加第二个<a href="http://www.yetlive.com/post/z-blog-trackback.html" target="_blank">留言评论框</a>评论框的一些经验。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yetlive.com/post/182.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>在IE与Firefox下均能正常使用的添加到收藏夹的Javascript代码</title>
		<link>http://www.yetlive.com/post/174.html</link>
		<comments>http://www.yetlive.com/post/174.html#comments</comments>
		<pubDate>Sat, 14 Mar 2009 05:15:51 +0000</pubDate>
		<dc:creator>认真生活</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[IE浏览器]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[浏览器]]></category>

		<guid isPermaLink="false">http://www.d.zhangpeng.info/?p=174</guid>
		<description><![CDATA[今天为活着的主题添加了加入收藏夹的功能，很多的添加到收藏夹的代码都只能在IE下成功，而对于Firefox则失去效果，本站使用的Javascript代码可以保证在IE下和Firefox下均能正常添加到收藏夹。 通常的代码会如这样：&#60;a href=”window.external.AddFavorite(&#8216;活着，分享生活故事&#8217;,'http://www.tindiary.cn&#8217;)”&#62;，这样的代码只是针对IE有效，那么如何在Firefox中也可以正常添加到收藏夹呢？ 代码如下，实际上是构建了一个函数，判断浏览器的类型，并根据浏览器不同调用不同的浏览器对象完成功能： &#60;script language=”javascript”&#62; function addBookmark(title,url) { if (window.sidebar) { window.sidebar.addPanel(title, url,”"); } else if( document.all ) { window.external.AddFavorite( url, title); } else if( window.opera &#38;&#38; window.print ) { return true; } } &#60;/script&#62; 在需要加入添加收藏链接的地方加入如下链接： &#60;a href=”javascript:addBookmark(&#8216;活着，分享生活故事&#8217;,'http://www.tindiary.cn&#8217;)”&#62; 或 &#60;a href=”javascript:addBookmark(document.title,document.location.href)”&#62; 两者区别主要在于后者可以根据当前页面改变收藏的页面即收藏夹中显示的名字，前者收藏的是http://www.yetlive.com这样一个网址，显示“活着，分享生活故事”，而后者会收藏当前页面，显示的则是当前页面的标题。 已上代码可以把Javascript段和&#60;a&#62;分开，比如把javascript代码放到页面头部或者整站的JS文件中，比如活着就是把这段放入了正站JS文件中了。 以上添加到收藏夹的代码在IE下和Firefox中均可以正常使用。]]></description>
			<content:encoded><![CDATA[<p>今天为<a href="http://www.yetlive.com">活着</a>的主题添加了加入收藏夹的功能，很多的添加到收藏夹的代码都只能在IE下成功，而对于Firefox则失去效果，本站使用的Javascript代码可以保证在IE下和Firefox下均能正常添加到收藏夹。</p>
<p><span id="more-174"></span></p>
<p>通常的代码会如这样：&lt;a href=”window.external.AddFavorite(&#8216;活着，分享生活故事&#8217;,'http://www.tindiary.cn&#8217;)”&gt;，这样的代码只是针对<a href="http://www.yetlive.com/tags/ie">IE</a>有效，那么如何在Firefox中也可以正常添加到收藏夹呢？</p>
<p>代码如下，实际上是构建了一个函数，判断浏览器的类型，并根据浏览器不同调用不同的浏览器对象完成功能：</p>
<p><span style="color: #ff0000;">&lt;script language=”<a href="http://www.yetlive.com/tags/javascript" class="st_tag internal_tag" rel="tag" title="标签 javascript 下的日志">javascript</a>”&gt;<br />
 function addBookmark(title,url) {<br />
 if (window.sidebar) {<br />
 window.sidebar.addPanel(title, url,”");<br />
 } else if( document.all ) {<br />
 window.external.AddFavorite( url, title);<br />
 } else if( window.opera &amp;&amp; window.print ) {<br />
 return true;<br />
 }<br />
 }<br />
 &lt;/script&gt;</span></p>
<p>在需要加入添加收藏链接的地方加入如下链接：</p>
<p>&lt;a href=”javascript:addBookmark(&#8216;活着，分享生活故事&#8217;,'http://www.tindiary.cn&#8217;)”&gt;</p>
<p>或</p>
<p>&lt;a href=”javascript:addBookmark(document.title,document.location.href)”&gt;</p>
<p>两者区别主要在于后者可以根据当前页面改变收藏的页面即收藏夹中显示的名字，前者收藏的是http://www.yetlive.com这样一个网址，显示“活着，分享生活故事”，而后者会收藏当前页面，显示的则是当前页面的标题。</p>
<p>已上代码可以把Javascript段和&lt;a&gt;分开，比如把javascript代码放到页面头部或者整站的JS文件中，比如活着就是把这段放入了正站JS文件中了。</p>
<p>以上添加到收藏夹的代码在IE下和Firefox中均可以正常使用。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yetlive.com/post/174.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>自动填充文本输入框Javascript特效代码</title>
		<link>http://www.yetlive.com/post/139.html</link>
		<comments>http://www.yetlive.com/post/139.html#comments</comments>
		<pubDate>Tue, 06 Jan 2009 07:03:04 +0000</pubDate>
		<dc:creator>认真生活</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://www.d.zhangpeng.info/?p=139</guid>
		<description><![CDATA[昨日做了个搜索特定网站关键字免费工具,主体功能是以Javascript代码实现的,其中重要的一段代码就是自动将前后文本输入框中输入的文本添加至第三个文本框.当然,作者在制作这款工具时已经把第三个文本框隐藏了,其中有段代码是&#60;input id=”t2&#8243; name=q type=”hidden”&#62;这一段代码其实就是第三个输入框代码,其中的hidden表示隐藏. 好了,我们来研究研究使用Javascript自动修改填充文本输入框或文本输入区域的方法吧. 先看一段代码: &#60;input onkeyup=”refreshValue(this)” /&#62; 这段代码是你输入文本的文本框,在这里调用到函数refreshValue(this),该函数即主要功能函数.该函数代码如下: &#60;script language=”javascript”&#62; function refreshValue(obj) { var s = obj.value; document.getElementById(“t2&#8243;).value=s; } &#60;/script&#62; 然后你需要的是如下一个输入框: &#60;input id=”t2&#8243; name=q &#62; 这样,一个输入文字后自动刷新另外一个文本框内容的方法就出现了. 函数中document.getElementById(“t2&#8243;).value=s表示取得id值为t2的文本输入框并把s所代表的值自动填充至该文本输入框. 以上就是活着今天说到的Javascript代码实现根据用户在一个框的输入自动填充其他文本框或者说自动修改文本框内容的方法.更多的应用可以在此基础上进行改进即可.]]></description>
			<content:encoded><![CDATA[<p>昨日做了个<a href="http://www.yetlive.com/post/search-engine-tool.html" target="_blank">搜索特定网站关键字免费工具</a>,主体功能是以Javascript代码实现的,其中重要的一段代码就是自动将前后文本输入框中输入的文本添加至第三个文本框.当然,作者在制作这款工具时已经把第三个文本框隐藏了,其中有段代码是<strong><span style="color: #808000;">&lt;input id=”t2&#8243; name=q type=”hidden”&gt;</span></strong>这一段代码其实就是第三个输入框代码,其中的hidden表示隐藏.</p>
<p><span id="more-139"></span></p>
<p>好了,我们来研究研究使用Javascript自动修改填充文本输入框或文本输入区域的方法吧.</p>
<p>先看一段代码:</p>
<p><span style="color: #ff0000;">&lt;input  onkeyup=”refreshValue(this)”       /&gt;</span></p>
<p>这段代码是你输入文本的文本框,在这里调用到函数refreshValue(this),该函数即主要功能函数.该函数代码如下:</p>
<p><span style="color: #ff0000;">&lt;script language=”<a href="http://www.yetlive.com/tags/javascript" class="st_tag internal_tag" rel="tag" title="标签 javascript 下的日志">javascript</a>”&gt;<br />
function refreshValue(obj) {<br />
var s = obj.value;<br />
document.getElementById(“t2&#8243;).value=s;<br />
}<br />
&lt;/script&gt;</span></p>
<p>然后你需要的是如下一个输入框:</p>
<p><span style="color: #ff0000;">&lt;input id=”t2&#8243; name=q &gt;</span></p>
<p>这样,一个输入文字后自动刷新另外一个文本框内容的方法就出现了.</p>
<p>函数中<span style="color: #ff0000;">document.getElementById(“t2&#8243;).value=s</span>表示取得<span style="color: #ff0000;">id</span>值为<span style="color: #ff0000;">t2</span>的文本输入框并把<span style="color: #ff0000;">s</span>所代表的值自动填充至该文本输入框.</p>
<p>以上就是<a href="http://www.yetlive.com">活着</a>今天说到的Javascript代码实现根据用户在一个框的输入自动填充其他文本框或者说自动修改文本框内容的方法.更多的应用可以在此基础上进行改进即可.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yetlive.com/post/139.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>网页制作中几种显示和隐藏层的方法</title>
		<link>http://www.yetlive.com/post/76.html</link>
		<comments>http://www.yetlive.com/post/76.html#comments</comments>
		<pubDate>Sun, 23 Nov 2008 19:45:37 +0000</pubDate>
		<dc:creator>认真生活</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[网页制作]]></category>

		<guid isPermaLink="false">http://www.d.zhangpeng.info/?p=76</guid>
		<description><![CDATA[这里介绍三种网页制作中常用的显示和隐藏层的方法: 1.css样式实现层的显示和隐藏.代码如下: &#60;a style="color:blue" onMouseOver="document.all.Layer1.style.visibility=''" onMouseOut="document.all.Layer1.style.visibility='hidden'" href="####"&#62; 1234567890&#60;/a&#62; &#60;div id="Layer1" style="position:absolute; width:300px; height:100px; z-index:1; background-color: #CCFFFF; layer-background-color: #CCFFFF; border: 1px none #000000; visibility: hidden"&#62;11111111&#60;/div&#62; 以上代码加入页面中，鼠标悬浮于链接“1234567890”上时，层内容“11111111”显示，鼠标离开时层恢复隐藏状态。 2.Javascript实现层的显示与隐藏.代码如下: &#60;script&#62; function folder(d) { try{ var temp; var i = document.all("e_" + d.id); if (d.style.display == 'none') { d.style.display = ''; }else{ d.style.display = 'none'; } } catch(e) { [...]]]></description>
			<content:encoded><![CDATA[<p>这里介绍三种网页制作中常用的显示和隐藏层的方法:</p>
<p><span id="more-76"></span></p>
<p>1.css样式实现层的显示和隐藏.代码如下:</p>
<p class="code"><code>&lt;a style="color:blue" onMouseOver="document.all.Layer1.style.visibility=''" onMouseOut="document.all.Layer1.style.visibility='hidden'" href="####"&gt;  1234567890&lt;/a&gt; &lt;div id="Layer1" style="position:absolute; width:300px; height:100px; z-index:1; background-color: #CCFFFF; layer-background-color: #CCFFFF; border: 1px none #000000; visibility: hidden"&gt;11111111&lt;/div&gt;</code></p>
<p>以上代码加入页面中，鼠标悬浮于链接“1234567890”上时，层内容“11111111”显示，鼠标离开时层恢复隐藏状态。</p>
<p>2.Javascript实现层的显示与隐藏.代码如下:</p>
<p class="code"><code>&lt;script&gt;<br />
function folder(d)<br />
{<br />
try{<br />
var temp;<br />
var i = document.all("e_" + d.id);</p>
<p>if (d.style.display == 'none') {<br />
d.style.display = '';<br />
}else{<br />
d.style.display = 'none';<br />
}<br />
} catch(e) {<br />
}<br />
}</p>
<p>&lt;/script&gt;<br />
&lt;table width="100" border="0" cellspacing="0" cellpadding="0"&gt;<br />
&lt;tr&gt;<br />
&lt;td&gt;&lt;a href="#" onClick="folder(c_1)"&gt;下拉1&lt;/a&gt;&lt;/td&gt;<br />
&lt;/tr&gt;<br />
&lt;/table&gt;<br />
&lt;div  id="c_1"&gt;&lt;table class="content" cellpadding="2"&gt;&lt;tr&gt;&lt;td&gt;&lt;table&gt;&lt;tr&gt;&lt;td class="h4"&gt;计算机:&lt;/td&gt;&lt;td class="info"&gt;PC&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="h4"&gt;已收集:&lt;/td&gt;&lt;td class="info"&gt;2008年6月11日&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="h4"&gt;持续时间:&lt;/td&gt;&lt;td class="info"&gt;76秒&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;<br />
&lt;a href="<a href="http://www.yetlive.com/tags/javascript" class="st_tag internal_tag" rel="tag" title="标签 javascript 下的日志">javascript</a>:;" onClick="folder(c_2)"&gt;下拉2&lt;/a&gt;<br />
&lt;div  id="c_2" style="display:none"&gt;&lt;table class="content" cellpadding="2"&gt;&lt;tr&gt;&lt;td&gt;&lt;table&gt;&lt;tr&gt;&lt;td class="h4"&gt;计算机:&lt;/td&gt;&lt;td class="info"&gt;PC&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="h4"&gt;已收集:&lt;/td&gt;&lt;td class="info"&gt;2008年6月11日&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="h4"&gt;持续时间:&lt;/td&gt;&lt;td class="info"&gt;76秒&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</code></p>
<p><code> </code></p>
<p>可以看出,后一种方式的代码量较前一种的长,但是后一种能够实现更多的功能</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yetlive.com/post/76.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Javascript参考档之Document对象</title>
		<link>http://www.yetlive.com/post/73.html</link>
		<comments>http://www.yetlive.com/post/73.html#comments</comments>
		<pubDate>Sun, 23 Nov 2008 03:29:03 +0000</pubDate>
		<dc:creator>认真生活</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[网页制作]]></category>

		<guid isPermaLink="false">http://www.d.zhangpeng.info/?p=73</guid>
		<description><![CDATA[document 描述当前窗口或指定窗口对象的文档。它包含了文档从&#60;head&#62;到&#60;/body&#62;的内容。 用法：document （当前窗口） 或 &#60;窗口对象&#62;.document （指定窗口） 属性 cookie lastModified 当前文档的最后修改日期，是一个 Date 对象。 referrer 如果当前文档是通过点击连接打开的，则 referrer 返回原来的 URL。 title 指&#60;head&#62;标记里用&#60;title&#62;…&#60;/title&#62;定义的文字。在 Netscape 里本属性不接受赋值。 fgColor 指&#60;body&#62;标记的 text 属性所表示的文本颜色。 bgColor 指&#60;body&#62;标记的 bgcolor 属性所表示的背景颜色。 linkColor 指&#60;body&#62;标记的 link 属性所表示的连接颜色。 alinkColor 指&#60;body&#62;标记的 alink 属性所表示的活动连接颜色。 vlinkColor 指&#60;body&#62;标记的 vlink 属性所表示的已访问连接颜色。 方法 open() 打开文档以便 JavaScript 能向文档的当前位置（指插入 JavaScript 的位置）写入数据。通常不需要用这个方法，在需要的时候 JavaScript 自动调用。 write(); writeln() 向文档写入数据，所写入的会当成标准文档 HTML [...]]]></description>
			<content:encoded><![CDATA[<p>document 描述当前窗口或指定窗口对象的文档。它包含了文档从&lt;head&gt;到&lt;/body&gt;的内容。</p>
<p><span id="more-73"></span></p>
<div>用法：document （当前窗口）</div>
<div>或 &lt;窗口对象&gt;.document （指定窗口）</div>
<div>属性</div>
<div>cookie</div>
<div>lastModified 当前文档的最后修改日期，是一个 Date 对象。</div>
<div>referrer 如果当前文档是通过点击连接打开的，则 referrer 返回原来的 URL。</div>
<div>title 指&lt;head&gt;标记里用&lt;title&gt;…&lt;/title&gt;定义的文字。在 Netscape 里本属性不接受赋值。</div>
<div>fgColor 指&lt;body&gt;标记的 text 属性所表示的文本颜色。</div>
<div>bgColor 指&lt;body&gt;标记的 bgcolor 属性所表示的背景颜色。</div>
<div>linkColor 指&lt;body&gt;标记的 link 属性所表示的连接颜色。</div>
<div>alinkColor 指&lt;body&gt;标记的 alink 属性所表示的活动连接颜色。</div>
<div>vlinkColor 指&lt;body&gt;标记的 vlink 属性所表示的已访问连接颜色。</div>
<div>方法</div>
<div>open() 打开文档以便 <a href="http://www.yetlive.com/tags/javascript" class="st_tag internal_tag" rel="tag" title="标签 javascript 下的日志">JavaScript</a> 能向文档的当前位置（指插入 <a href="http://www.yetlive.com/tags/javascript" class="st_tag internal_tag" rel="tag" title="标签 javascript 下的日志">JavaScript</a> 的位置）写入数据。通常不需要用这个方法，在需要的时候 <a href="http://www.yetlive.com/tags/javascript" class="st_tag internal_tag" rel="tag" title="标签 javascript 下的日志">JavaScript</a> 自动调用。</div>
<div>write(); writeln() 向文档写入数据，所写入的会当成标准文档 HTML 来处理。Writeln() 与 write() 的不同点在于，writeln() 在写入数据以后会加一个换行。这个换行只是在 HTML 中换行，具体情况能不能够是显示出来的文字换行，要看插入 JavaScript 的位置而定。如在&lt;pre&gt;标记中插入，这个换行也会体现在文档中。</div>
<div>clear() 清空当前文档。</div>
<div>close() 关闭文档，停止写入数据。如果用了 write[ln]() 或 clear() 方法，就一定要用 close() 方法来保证所做的更改能够显示出来。如果文档还没有完全读取，也就是说，JavaScript 是插在文档中的，那就不必使用该方法。</div>
<div>现在我们已经拥有足够的知识来做以下这个很多网站都有的弹出式更新通知了。</div>
<div>&lt;script language=”JavaScript”&gt;</div>
<div>&lt;!&#8211;</div>
<div>var whatsNew = open(”,&#8217;_blank&#8217;,'top=50,left=50,width=200,height=300,&#8217; +</div>
<div>&#8216;menubar=no,toolbar=no,directories=no,location=no,&#8217; +</div>
<div>&#8216;status=no,resizable=no,scrollbars=yes&#8217;);</div>
<div>whatsNew.document.write(&#8216;&lt;center&gt;&lt;b&gt;更新通知&lt;/b&gt;&lt;/center&gt;&#8217;);</div>
<div>whatsNew.document.write(&#8216;&lt;p&gt;最后更新日期：00.08.01&#8242;);</div>
<div>whatsNew.document.write(&#8216;&lt;p&gt;00.08.01：增加了“我的最爱”栏目。&#8217;);</div>
<div>whatsNew.document.write(&#8216;&lt;p align=”right”&gt;&#8217; +</div>
<div>&#8216;&lt;a href=”javascript:self.close()”&gt;关闭窗口&lt;/a&gt;&#8217;);</div>
<div>whatsNew.document.close();</div>
<div>&#8211;&gt;</div>
<div>&lt;/script&gt;</div>
]]></content:encoded>
			<wfw:commentRss>http://www.yetlive.com/post/73.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Javascript参考档之Window对象</title>
		<link>http://www.yetlive.com/post/72.html</link>
		<comments>http://www.yetlive.com/post/72.html#comments</comments>
		<pubDate>Sun, 23 Nov 2008 03:25:31 +0000</pubDate>
		<dc:creator>认真生活</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[网页制作]]></category>

		<guid isPermaLink="false">http://www.d.zhangpeng.info/?p=72</guid>
		<description><![CDATA[window 窗口对象描述的是一个浏览器窗口。一般要引用它的属性和方法时，不需要用“window.xxx”这种形式，而直接使用“xxx”。一个框架页面也是一个窗口。 属性 name 窗口的名称，由打开它的连接（）或框架页（）或某一个窗口调用的 open() 方法（见下）决定。一般我们不会用这个属性。 status 指窗口下方的“状态栏”所显示的内容。通过对 status 赋值，可以改变状态栏的显示。 opener 用法：window.opener；返回打开本窗口的窗口对象。注意：返回的是一个窗口对象。如果窗口不是由其他窗口打开的，在 Netscape 中这个属性返回 null；在 IE 中返回“未定义”（undefined）。Undefined 在一定程度上等于 null。注意：undefined 不是 JavaScript 常数，如果你企图使用“undefined”，那就真的返回“未定义”了。 self 指窗口本身，它返回的对象跟 window 对象是一模一样的。最常用的是“self.close()”，放在标记中：“关闭窗口”。 parent 返回窗口所属的框架页对象。 top 返回占据整个浏览器窗口的最顶端的框架页对象。 history 历史对象 location 地址对象 document 文档对象 方法 open() 打开一个窗口。用法：open(, , ); ：描述所打开的窗口打开哪一个网页。如果留空（”），则不打开任意网页。 ：描述被打开的窗口的名称（window.name），可以使用&#8217;_top&#8217;、&#8217;_blank&#8217;等内建名称。这里的名称跟“”里的“target”属性是一样的。 ：描述被打开的窗口的样貌。如果只需要打开一个普通窗口，该字符串留空（”），如果要指定样貌，就在字符串里写上一到多个参数，参数之间用逗号隔开。 例：打开一个 400 x 100 的干净的窗口： open(”,&#8217;_blank&#8217;,'width=400,height=100,menubar=no,toolbar=no, location=no,directories=no,status=no,scrollbars=yes,resizable=yes&#8217;) 参数 top=# 窗口顶部离开屏幕顶部的像素数 [...]]]></description>
			<content:encoded><![CDATA[<p>window 窗口对象描述的是一个浏览器窗口。一般要引用它的属性和方法时，不需要用“window.xxx”这种形式，而直接使用“xxx”。一个框架页面也是一个窗口。</p>
<div><span id="more-72"></span></div>
<div>属性</div>
<div></div>
<div>name 窗口的名称，由打开它的连接（<a target="…">）或框架页（）或某一个窗口调用的 open() 方法（见下）决定。一般我们不会用这个属性。</div>
<div>status 指窗口下方的“状态栏”所显示的内容。通过对 status 赋值，可以改变状态栏的显示。</div>
<div>opener 用法：window.opener；返回打开本窗口的窗口对象。注意：返回的是一个窗口对象。如果窗口不是由其他窗口打开的，在 Netscape 中这个属性返回 null；在 IE 中返回“未定义”（undefined）。Undefined 在一定程度上等于 null。注意：undefined 不是 JavaScript 常数，如果你企图使用“undefined”，那就真的返回“未定义”了。</div>
<div>self 指窗口本身，它返回的对象跟 window 对象是一模一样的。最常用的是“self.close()”，放在<a>标记中：“<a href="self.close()">关闭窗口</a>”。</div>
<div>parent 返回窗口所属的框架页对象。</div>
<div>top 返回占据整个浏览器窗口的最顶端的框架页对象。</div>
<div>history 历史对象</div>
<div>location 地址对象</div>
<div>document 文档对象</div>
<div></div>
<div>方法</div>
<div></div>
<div>open() 打开一个窗口。用法：open(, , );</div>
<div>：描述所打开的窗口打开哪一个网页。如果留空（”），则不打开任意网页。</div>
<div>：描述被打开的窗口的名称（window.name），可以使用&#8217;_top&#8217;、&#8217;_blank&#8217;等内建名称。这里的名称跟“<a href="…" target="…">”里的“target”属性是一样的。</div>
<div>：描述被打开的窗口的样貌。如果只需要打开一个普通窗口，该字符串留空（”），如果要指定样貌，就在字符串里写上一到多个参数，参数之间用逗号隔开。</div>
<div></div>
<div>例：打开一个 400 x 100 的干净的窗口：</div>
<div>open(”,&#8217;_blank&#8217;,'width=400,height=100,menubar=no,toolbar=no,</div>
<div>location=no,directories=no,status=no,scrollbars=yes,resizable=yes&#8217;)</div>
<div></div>
<div>参数</div>
<div></div>
<div>top=#<span> </span>窗口顶部离开屏幕顶部的像素数</div>
<div>left=#<span> </span>窗口左端离开屏幕左端的像素数</div>
<div>width=#<span> </span>窗口的宽度</div>
<div>height=#<span> </span>窗口的高度</div>
<div>menubar=…<span> </span>窗口有没有菜单，取值yes或no</div>
<div>toolbar=…<span> </span>窗口有没有工具条，取值yes或no</div>
<div>location=…<span> </span>窗口有没有地址栏，取值yes或no</div>
<div>directories=…<span> </span>窗口有没有连接区，取值yes或no</div>
<div>scrollbars=…<span> </span>窗口有没有滚动条，取值yes或no</div>
<div>status=…<span> </span>窗口有没有状态栏，取值yes或no</div>
<div>resizable=…<span> </span>窗口给不给调整大小，取值yes或no</div>
<div>open() 方法有返回值，返回的就是它打开的窗口对象。所以，</div>
<div></div>
<div>var newWindow = open(”,&#8217;_blank&#8217;);</div>
<div></div>
<div>这样把一个新窗口赋值到“newWindow”变量中，以后通过“newWindow”变量就可以控制窗口了。</div>
<div></div>
<div>close() 关闭一个已打开的窗口。</div>
<div>用法：window.close() 或 self.close()：关闭本窗口；</div>
<div>.close()：关闭指定的窗口。</div>
<div>如果该窗口有状态栏，调用该方法后浏览器会警告：“网页正在试图关闭窗口，是否关闭？”然后等待用户选择是否；如果没有状态栏，调用该方法将直接关闭窗口。</div>
<div>blur() 使焦点从窗口移走，窗口变为“非活动窗口”。</div>
<div>focus() 是窗口获得焦点，变为“活动窗口”。不过在 Windows 98，该方法只能使窗口的标题栏和任务栏上的相应按钮闪烁，提示用户该窗口正在试图获得焦点。</div>
<div>scrollTo() 用法：[.]scrollTo(x, y)；使窗口滚动，使文档从左上角数起的(x, y)点滚动到窗口的左上角。</div>
<div>scrollBy() 用法：[.]scrollBy(deltaX, deltaY)；使窗口向右滚动 deltaX 像素，向下滚动 deltaY 像素。如果取负值，则向相反的方向滚动。</div>
<div>resizeTo() 用法：[.]resizeTo(width, height)；使窗口调整大小到宽 width 像素，高 height 像素。</div>
<div>resizeBy() 用法：[.]resizeBy(deltaWidth, deltaHeight)；使窗口调整大小，宽增大 deltaWidth 像素，高增大 deltaHeight 像素。如果取负值，则减少。</div>
<div>alert() 用法：alert()；弹出一个只包含“确定”按钮的对话框，显示的内容，整个文档的读取、Script 的运行都会暂停，直到用户按下“确定”。</div>
<div>confirm() 用法：confirm()；弹出一个包含“确定”和“取消”按钮的对话框，显示的内容，要求用户做出选择，整个文档的读取、Script 的运行都会暂停。如果用户按下“确定”，则返回 true 值，如果按下“取消”，则返回 false 值。</div>
<div>prompt() 用法：prompt([, ])；弹出一个包含“确认”“取消”和一个文本框的对话框，显示的内容，要求用户在文本框输入一些数据，整个文档的读取、Script 的运行都会暂停。如果用户按下“确认”，则返回文本框里已有的内容，如果用户按下“取消”，则返回 null 值。如果指定，则文本框里会有默认值。</div>
<div></div>
<div>事件</div>
<div></div>
<div>onload; onunload; onresize; onblur; onfocus; onerror</div>
]]></content:encoded>
			<wfw:commentRss>http://www.yetlive.com/post/72.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cookies的在网页制作中的应用</title>
		<link>http://www.yetlive.com/post/16.html</link>
		<comments>http://www.yetlive.com/post/16.html#comments</comments>
		<pubDate>Wed, 05 Nov 2008 17:52:11 +0000</pubDate>
		<dc:creator>认真生活</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[网页制作]]></category>

		<guid isPermaLink="false">http://www.d.zhangpeng.info/?p=16</guid>
		<description><![CDATA[这是一篇关于网页制作知识的日志,许多初入制作网页的朋友或许不清楚Cookie的使用,使用Cookie是非常有用的,能够加快网页展示速度,比如hao123的页面,设置了Cookie,因而不联网也能打开页面。这样从本机读取数据，不仅速度快，而且也大大减小了服务器压力，对于服务器比较差的朋友尤其适用。 Cookie 的基本知识 Cookie 是什么？在英文里”cookie”是小点心的意思,在网页制作中则有另外一层的含义。“某些 Web 站点在您的硬盘上用很小的文本文件存储了一些信息，这些文件就称为 Cookie。” JavaScript 提供了对 Cookies 的很全面的访问权利。 Cookie的命名规则是这样的：&#60;cookie名&#62;=&#60;值&#62;。&#60;cookie名&#62;只能用可以用在 URL 编码中的字符，这比较难懂，但是只要你只用字母和数字命名，就不会有问题了。&#60;值&#62;的要 求也是“只能用可以用在 URL 编码中的字符”。 每个 Cookie 都有失效日期，一旦过了失效日期，这个 Cookie 就会被删掉。我们不能直接删掉一个 Cookie，但是可以用设定失效日期早于现在时刻的方法来间接删掉它。 使用 document.cookie 属性。 如果直接使用 document.cookie 属性，我们就可以知道在现在的文档中有多少个 Cookies以及每个Cookies 的名字，和它的值。例如，在某文档中添加“document.write (document.cookie)”，结果显示：name=yetlive; email=yetlive@yetlive.com; lastvisited=default.html。这意味着，文档包含 3 个 Cookies：name, email 和 lastvisited，它们的值分别是 yetlive, yetlive@yetlive.com 和 default.html。 可以看到，两个 Cookies 之间是用分号和空格隔的，于是我们可以对其切片处理，使用用 cookieString.split(&#8216;; &#8216;) 方法得到每个 Cookie 分开的一个数组（先用 var cookieString [...]]]></description>
			<content:encoded><![CDATA[<p>这是一篇关于<strong><a href="http://www.yetlive.com/tags/web-design" class="st_tag internal_tag" rel="tag" title="标签 网页制作 下的日志">网页制作</a></strong>知识的日志,许多初入制作网页的朋友或许不清楚<span style="color: #ff0000;"><strong>Cookie的使用</strong></span>,<strong>使用Cookie是非常有用</strong>的,能够<strong>加快网页展示速度</strong>,比如hao123的页面,设置了Cookie,因而不联网也能打开页面。这样从本机读取数据，不仅速度快，而且也大大减小了服务器压力，对于服务器比较差的朋友尤其适用。</p>
<p><span id="more-16"></span></p>
<p><strong>Cookie 的基本知识</strong></p>
<p><strong>Cookie </strong>是什么？在英文里”cookie”是小点心的意思,在网页制作中则有另外一层的含义。“某些 Web 站点在您的硬盘上用很小的文本文件存储了一些信息，这些文件就称为</p>
<p>Cookie。” <strong><a href="http://www.yetlive.com/tags/javascript" class="st_tag internal_tag" rel="tag" title="标签 javascript 下的日志">JavaScript</a></strong> 提供了对 Cookies 的很全面的访问权利。</p>
<p><strong>Cookie的命名规则</strong>是这样的：&lt;cookie名&gt;=&lt;值&gt;。&lt;cookie名&gt;只能用可以用在 URL 编码中的字符，这比较难懂，但是只要你只用字母和数字命名，就不会有问题了。&lt;值&gt;的要</p>
<p>求也是“只能用可以用在 URL 编码中的字符”。</p>
<p>每个 Cookie 都有失效日期，一旦过了失效日期，这个 Cookie 就会被删掉。我们不能直接删掉一个 Cookie，但是可以用设定失效日期早于现在时刻的方法来间接删掉它。</p>
<p><strong>使用 document.cookie 属性</strong>。</p>
<p>如果直接使用 document.cookie 属性，我们就可以知道在现在的文档中有多少个 Cookies以及每个Cookies 的名字，和它的值。例如，在某文档中添加“document.write</p>
<p>(document.cookie)”，结果显示：name=yetlive; email=yetlive@yetlive.com; lastvisited=default.html。这意味着，文档包含 3 个 Cookies：name, email 和</p>
<p>lastvisited，它们的值分别是 <a href="http://www.yetlive.com" target="_blank">yetlive</a>, yetlive@yetlive.com 和 <a href="http://www.yetlive.com" target="_blank">default.html</a>。</p>
<p>可以看到，两个 Cookies 之间是用分号和空格隔的，于是我们可以对其切片处理，使用用 cookieString.split(&#8216;; &#8216;) 方法得到每个 Cookie 分开的一个数组（先用 var</p>
<p>cookieString = document.cookie）。</p>
<p>设定一个 Cookie 的方法是对 document.cookie 赋值。与其它情况下的赋值不同，向 document.cookie 赋值不会删除掉原有的 Cookies，而只会增添 Cookies 或更改原有</p>
<p>Cookie。赋值的格式：</p>
<p>document.cookie = &#8216;cookieName=&#8217; + escape(&#8216;cookieValue&#8217;)</p>
<p>+ &#8216;;expires=&#8217; + expirationDateObj.toGMTString();</p>
<p>以上<strong>“cookiename”“cookievalue”“expirationDateObj”</strong>三项是要按实际情况做出改动的。cookieName 表示 Cookie 的名称，cookieValue 表示 Cookie 的值，</p>
<p>expirationDateObj 表示储存着失效日期的日期对象名，如果不需要指定失效日期，则不需要第二行。不指定失效日期，则浏览器默认是在关闭浏览器（也就是关闭所有窗口）之</p>
<p>后过期。</p>
<p><span style="color: #ff0000;">应该注意的地方：</span></p>
<p><span style="color: #ff0000;">首先 </span>escape() 方法：为什么一定要用？因为 Cookie 的值的要求是“只能用可以用在 URL 编码中的字符”。我们知道“escape()”方法是把字符串按 URL 编码方法来编码</p>
<p>的，那我们只需要用一个“escape()”方法来处理输出到 Cookie 的值，用“unescape()”来处理从 Cookie 接收过来的值就万无一失了。而且这两个方法的最常用途就是处理</p>
<p>Cookies。其实设定一个 Cookie 只是“document.cookie = &#8216;cookieName=cookieValue&#8217;”这么简单，但是为了避免在 cookieValue 中出现 URL 里不准出现的字符，还是用一个</p>
<p>escape() 好。</p>
<p><span style="color: #ff0000;">然后</span>“expires”前面的分号：注意到就行了。是分号而不是其他。</p>
<p><span style="color: #ff0000;">最后</span> toGMTString() 方法：设定 Cookie 的时效日期都是用 GMT 格式的时间的，其它格式的时间是没有作用的。</p>
<p><span style="color: #ff0000;">现在我们来实战一下</span>。设定一个“name=rose”的 Cookie，在 3 个月后过期。</p>
<p>var expires = new Date();</p>
<p>expires.setTime(expires.getTime() + 3 * 30 * 24 * 60 * 60 * 1000);</p>
<p>/*   三个月 x 一个月当作 30 天 x 一天 24 小时</p>
<p>x 一小时 60 分 x 一分 60 秒 x 一秒 1000 毫秒 */</p>
<p>document.cookie = &#8216;name=rose;expires=&#8217; + expires.toGMTString();</p>
<p>为什么没有用 escape() 方法？这是因为我们知道 rose 是一个合法的 URL 编码字符串，也就是说，&#8217;rose&#8217; == escape(&#8216;rose&#8217;)。一般来说，如果设定 Cookie 时不用 escape()</p>
<p>，那获取 Cookie 时也不用 unescape()。</p>
<p>再来一次：编写一个函数，作用是查找指定 Cookie 的值。</p>
<p>function getCookie(cookieName) {</p>
<p>var cookieString = document.cookie;</p>
<p>var start = cookieString.indexOf(cookieName + &#8216;=&#8217;);</p>
<p>// 加上等号的原因是避免在某些 Cookie 的值里有</p>
<p>// 与 cookieName 一样的字符串。</p>
<p>if (start == -1) // 找不到</p>
<p>return null;</p>
<p>start += cookieName.length + 1;</p>
<p>var end = cookieString.indexOf(&#8216;;&#8217;, start);</p>
<p>if (end == -1) return unescape(cookieString.substring(start));</p>
<p>return unescape(cookieString.substring(start, end));</p>
<p>}</p>
<p>这个函数用到了字符串对象的一些方法，请快去查查。这个函数所有的 if 语句都没有带上 else，这是因为如果条件成立，程序运行的都是 return 语句，在函数里碰上 return</p>
<p>，就会终止运行，所以不加 else 也没问题。该函数在找到 Cookie 时，就会返回 Cookie 的值，否则返回“null”。</p>
<p>现在我们要删除刚才设定的 name=rose Cookie。</p>
<p>var expires = new Date();</p>
<p>expires.setTime(expires.getTime() &#8211; 1);</p>
<p>document.cookie = &#8216;name=rose;expires=&#8217; + expires.toGMTString();</p>
<p>可以看到，只需要把失效日期改成比现在日期早一点（这里是早 1 毫秒），再用同样的方法设定 <strong>Cookie</strong>，就可以删掉 <strong>Cookie </strong>了。</p>
<p style="text-align: center;"><span style="color: #ff0000;">在Google中搜索更多：</span><a href="http://www.google.cn/custom?domains=www.yetlive.com&amp;q=cookie的使用&amp;sitesearch=www.yetlive.com&amp;sa=Google+搜索&amp;client=pub-9856894161517974&amp;forid=1&amp;ie=UTF-8&amp;oe=UTF-8&amp;safe=active&amp;cof=GALT:%23008000;GL:1;p:%234C4C4C;VLC:663399;AH:center;BGC:FFFFFF;LBGC:FFFFFF;ALC:0000FF;LC:0000FF;T:000000;GFNT:0000FF;GIMP:0000FF;FORID:1&amp;hl=zh-CN" target="_blank"><span style="color: #0000ff;">Cookie的使用</span></a><span style="color: rgb(255,&amp;amp;lt;">知识</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.yetlive.com/post/16.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

