<?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.oneflash.net/tag/javascript/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.oneflash.net</link>
	<description>www.oneflash.net</description>
	<lastBuildDate>Tue, 06 Dec 2011 05:23:15 +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>谷歌浏览器的javascript引擎</title>
		<link>http://www.oneflash.net/2008/09/google-chrome-js/</link>
		<comments>http://www.oneflash.net/2008/09/google-chrome-js/#comments</comments>
		<pubDate>Thu, 04 Sep 2008 00:00:00 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[资讯分享]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://oneflash.net/1970/01/%e8%b0%b7%e6%ad%8c%e6%b5%8f%e8%a7%88%e5%99%a8%e7%9a%84javascript%e5%bc%95%e6%93%8e/</guid>
		<description><![CDATA[&#160;看新闻说Chrome的Javascript引擎很强大，执行速度很快。就随便写了一个1,000,000次的累加放到IE和Chrome下测试，效果果然很明显！如下图： 脚本代码很简单，就是一段循环累加的： JavaScript代码 &#60;script&#160;type=&#34;text/javascript&#34;&#62; &#160;&#160; var&#160;sum=0; &#160;&#160; var&#160;o=new&#160;Date; &#160;&#160; for(var&#160;i=0;i&#60;1000001;i++){sum+=i;} &#160;&#160; var&#160;e=new&#160;Date; &#160;&#160; document.write(&#34;从1到1000000的累加结果：&#34;&#160;+&#160;sum&#160;+&#160;&#34;&#60;br&#160;/&#62;&#34;); &#160;&#160; document.write(&#34;耗时&#34;&#160;+&#160;(e.getTime()-o.getTime())&#160;+&#160;&#34;毫秒&#34;); &#160;&#160; &#60;/script&#62;&#160;&#160; &#160;]]></description>
			<content:encoded><![CDATA[<p>&nbsp;看<a target="_blank" href="http://it.sohu.com/20080903/n259361794.shtml">新闻</a>说Chrome的Javascript引擎很强大，执行速度很快。就随便写了一个1,000,000次的累加放到IE和Chrome下测试，效果果然很明显！如下图：</p>
<div><img alt="ie vs chrome" src="/attachments/month_0809/c200894101425.gif" /></div>
<p>脚本代码很简单，就是一段循环累加的：</p>
<div class="codeText">
<div class="codeHead">JavaScript代码</div>
<ol class="dp-c">
<li class="alt"><span><span>&lt;script&nbsp;type=</span><span class="string">&quot;text/javascript&quot;</span><span>&gt; &nbsp;&nbsp;</span></span></li>
<li><span class="keyword">var</span><span>&nbsp;sum=0; &nbsp;&nbsp;</span></li>
<li class="alt"><span class="keyword">var</span><span>&nbsp;o=</span><span class="keyword">new</span><span>&nbsp;Date; &nbsp;&nbsp;</span></li>
<li><span class="keyword">for</span><span>(</span><span class="keyword">var</span><span>&nbsp;i=0;i&lt;1000001;i++){sum+=i;} &nbsp;&nbsp;</span></li>
<li class="alt"><span class="keyword">var</span><span>&nbsp;e=</span><span class="keyword">new</span><span>&nbsp;Date; &nbsp;&nbsp;</span></li>
<li><span>document.write(</span><span class="string">&quot;从1到1000000的累加结果：&quot;</span><span>&nbsp;+&nbsp;sum&nbsp;+&nbsp;</span><span class="string">&quot;&lt;br&nbsp;/&gt;&quot;</span><span>); &nbsp;&nbsp;</span></li>
<li class="alt"><span>document.write(</span><span class="string">&quot;耗时&quot;</span><span>&nbsp;+&nbsp;(e.getTime()-o.getTime())&nbsp;+&nbsp;</span><span class="string">&quot;毫秒&quot;</span><span>); &nbsp;&nbsp;</span></li>
<li><span>&lt;/script&gt;&nbsp;&nbsp;</span></li>
</ol>
</div>
<p>
&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.oneflash.net/2008/09/google-chrome-js/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>hover伪类的使用</title>
		<link>http://www.oneflash.net/2008/05/hover-ie6/</link>
		<comments>http://www.oneflash.net/2008/05/hover-ie6/#comments</comments>
		<pubDate>Fri, 23 May 2008 00:00:00 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[Web技术]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[web standard]]></category>

		<guid isPermaLink="false">http://oneflash.net/1970/01/hover%e4%bc%aa%e7%b1%bb%e7%9a%84%e4%bd%bf%e7%94%a8/</guid>
		<description><![CDATA[前段时间在论坛上有人问到一个淘宝网上的hover伪类实现的效果如果兼容ie6。 帖子：http://bbs.blueidea.com/thread-2854899-1-1.html 淘宝效果预览：http://list.mall.taobao.com/1343/g-s&#8212;&#8211;40-0&#8211;1343.htm 其实，问题很简单，就是hover伪类在IE6中得不到很好的支持，因为IE6只支持css1，而在css1中hover伪类只能针对a标签来起作用，看了一下淘宝的代码，他们的解决方法是： 首先，按照ie7/FF都支持的css2的写法来写。其次针对IE6不支持css2再做特殊处理。也就是通过javascript来弥补ie6下的不足。 这段javascript的原理是这样的： 根据某些特征找到需要添加hover效果的标签 对此标签添加onmouseover和onmouseout事件 在onmouseover事件中给对象赋予新的css class属性，同样，在onmouseout时移除该css class即可模拟成hover伪类的效果了。 这里有一个简单的示例，供大家参考！]]></description>
			<content:encoded><![CDATA[<p>前段时间在论坛上有人问到一个淘宝网上的hover伪类实现的效果如果兼容ie6。<br />
帖子：http://bbs.blueidea.com/thread-2854899-1-1.html<br />
淘宝效果预览：http://list.mall.taobao.com/1343/g-s&#8212;&#8211;40-0&#8211;1343.htm</p>
<p>其实，问题很简单，就是hover伪类在IE6中得不到很好的支持，因为IE6只支持css1，而在css1中hover伪类只能针对a标签来起作用，看了一下淘宝的代码，他们的解决方法是：<br />
首先，按照ie7/FF都支持的css2的写法来写。其次针对IE6不支持css2再做特殊处理。也就是通过javascript来弥补ie6下的不足。</p>
<p>这段javascript的原理是这样的：</p>
<blockquote><p>
根据某些特征找到需要添加hover效果的标签<br />
对此标签添加onmouseover和onmouseout事件<br />
在onmouseover事件中给对象赋予新的css class属性，同样，在onmouseout时移除该css class即可模拟成hover伪类的效果了。
</p></blockquote>
<p><a target="_blank" href="http://www.oneflash.net/demo/ie6hover/">这里有一个简单的示例</a>，供大家参考！</p>
]]></content:encoded>
			<wfw:commentRss>http://www.oneflash.net/2008/05/hover-ie6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>随机显示图片脚本</title>
		<link>http://www.oneflash.net/2007/08/show-pic-random/</link>
		<comments>http://www.oneflash.net/2007/08/show-pic-random/#comments</comments>
		<pubDate>Thu, 09 Aug 2007 08:40:00 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[Web技术]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://oneflash.net/1970/01/%e9%9a%8f%e6%9c%ba%e6%98%be%e7%a4%ba%e5%9b%be%e7%89%87%e8%84%9a%e6%9c%ac/</guid>
		<description><![CDATA[预览地址：随机显示图片Demo]]></description>
			<content:encoded><![CDATA[<p><img src="/attachments/month_0708/02007810141423.jpg" border="0" alt="" /><br />
预览地址：<a href="http://www.oneflash.net/demo/Rimg/" target="_blank">随机显示图片Demo</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.oneflash.net/2007/08/show-pic-random/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>用javascript来实现select标签的美化</title>
		<link>http://www.oneflash.net/2007/04/js-select/</link>
		<comments>http://www.oneflash.net/2007/04/js-select/#comments</comments>
		<pubDate>Sat, 28 Apr 2007 16:47:00 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[Web技术]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://oneflash.net/1970/01/%e7%94%a8javascript%e6%9d%a5%e5%ae%9e%e7%8e%b0selct%e6%a0%87%e7%ad%be%e7%9a%84%e7%be%8e%e5%8c%96/</guid>
		<description><![CDATA[论坛经常有人会问到用CSS如何美化Sel&#101;ct标签，其实但凡你看到很酷的都是用javascript来实现的。昨天试着做了一下，基本实现的初级功能。拿出来和大家一起分享一下。先可以看一下预览效果：js实现select标签美化demo。 【功能需求】 1、调用要方便，做好之后应该像这样： function loadSel&#101;ct(sel&#101;ctobj){ //传入一个sel&#101;ct对象就能将他的样式美化 } 2、不改变原有表单项，表单的页面代码不去破坏： 【实现思路】 第一步：将表单中的sel&#101;ct隐藏起来。 为什么？很简单，因为这家伙太顽固了，用css根本搞不出来你想要的。所以把它杀掉。 第二步：用脚本找到sel&#101;ct标签在网页上的绝对位置。 我们在那个位置上用DIV标签做个假的、好看点的来当他的替身。 第三步：用脚本把sel&#101;ct标签中的值读出来。 虽然藏起来了，但它里边的options我们还有用呢，统统取过来。 第四步：当用户点击sel&#101;ct标签的替身，也就是div的时候。我们再用一个div浮在上一个div的下边，这个就是options的替身了。 大致上就是这样了，接下来我们一步一步去实现它！ 【准备工作】 1、想好你要把sel&#101;ct美化成什么样子，并准备好相应的图片。我准备了两张小图，就是下拉箭头1和下拉箭头2，1是默认样式，2是鼠标移过来的样式。 2、写好一个普通的表单递交页面，比如下边这个。注意我给sel&#101;ct定义了基本的CSS样式、在头部添加了调用js文件的代码、在body中添加了调用函数的脚本。 【编写javascript】 新建一个js文件并保存为select.js，剩下的工作我们全部在这个js中去完成。 函数名：loadSelect(obj); 参数：select对象 相关函数： function Offset(e) //取标签的绝对位置 { var t = e.offsetTop; var l = e.offsetLeft; var w = e.offsetWidth; var h = e.offsetHeight-2; while(e=e.offsetParent) { t+=e.offsetTop; l+=e.offsetLeft; } return { top : t, [...]]]></description>
			<content:encoded><![CDATA[<p>论坛经常有人会问到用CSS如何美化Sel&#101;ct标签，其实但凡你看到很酷的都是用javascript来实现的。昨天试着做了一下，基本实现的初级功能。拿出来和大家一起分享一下。先可以看一下预览效果：<a target="_blank" href="http://www.oneflash.net/demo/select">js实现select标签美化demo</a>。</p>
<p>【功能需求】<br />
1、调用要方便，做好之后应该像这样：<br />
<code><br />
function loadSel&#101;ct(sel&#101;ctobj){<br />
//传入一个sel&#101;ct对象就能将他的样式美化<br />
}<br />
</code><br />
2、不改变原有表单项，表单的页面代码不去破坏：</p>
<p>【实现思路】</p>
<p>第一步：将表单中的sel&#101;ct隐藏起来。<br />
为什么？很简单，因为这家伙太顽固了，用css根本搞不出来你想要的。所以把它杀掉。</p>
<p>第二步：用脚本找到sel&#101;ct标签在网页上的绝对位置。<br />
我们在那个位置上用DIV标签做个假的、好看点的来当他的替身。</p>
<p>第三步：用脚本把sel&#101;ct标签中的值读出来。<br />
虽然藏起来了，但它里边的options我们还有用呢，统统取过来。</p>
<p>第四步：当用户点击sel&#101;ct标签的替身，也就是div的时候。我们再用一个div浮在上一个div的下边，这个就是options的替身了。</p>
<p>大致上就是这样了，接下来我们一步一步去实现它！</p>
<p>【准备工作】<br />
1、想好你要把sel&#101;ct美化成什么样子，并准备好相应的图片。我准备了两张小图，就是下拉箭头1和下拉箭头2，1是默认样式，2是鼠标移过来的样式。<br />
2、写好一个普通的表单递交页面，比如下边这个。注意我给sel&#101;ct定义了基本的CSS样式、在头部添加了调用js文件的代码、在body中添加了调用函数的脚本。</p>
<p>【编写javascript】</p>
<p>新建一个js文件并保存为select.js，剩下的工作我们全部在这个js中去完成。</p>
<p>函数名：loadSelect(obj);<br />
参数：select对象</p>
<p>相关函数：<br />
<code><br />
function Offset(e)<br />
//取标签的绝对位置<br />
{<br />
	var t = e.offsetTop;<br />
	var l = e.offsetLeft;<br />
	var w = e.offsetWidth;<br />
	var h = e.offsetHeight-2;</p>
<p>	while(e=e.offsetParent)<br />
	{<br />
		t+=e.offsetTop;<br />
		l+=e.offsetLeft;<br />
	}<br />
	return {<br />
		top : t,<br />
		left : l,<br />
		width : w,<br />
		height : h<br />
	}<br />
}<br />
</code><br />
第一步：把sel&#101;ct的绝对位置记录下来。一会替身上来就知道应该站那里了。<br />
最后这个比较复杂一点，再解释一下，我们在做这一步之前，sel&#101;ct的样子已经出来了，下一步就是再加一个div去模仿sel&#101;ct被点击之后出现的下拉选项了。我们可以讲sel&#101;ct标签的options通过javascript提取出来，把它写成这样：<br />
基本上就这样了。还有些缺陷，有时间大家可以一起补充！</p>
<p>预览地址：<a target="_blank" href="http://www.oneflash.net/demo/select/">javascript模拟select下拉</a><br />
脚本下载：<a target="_blank" href="http://www.oneflash.net/demo/select/select.js">sel&#101;ct.js</a></p>
<p>[本文由于在pjblog2wp过程中丢失了一些信息，请大家注意看demo页面的代码。]</p>
]]></content:encoded>
			<wfw:commentRss>http://www.oneflash.net/2007/04/js-select/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>实现div可编辑的常见方法</title>
		<link>http://www.oneflash.net/2007/01/div-edit-enable/</link>
		<comments>http://www.oneflash.net/2007/01/div-edit-enable/#comments</comments>
		<pubDate>Wed, 10 Jan 2007 16:02:00 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[Web技术]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://oneflash.net/1970/01/%e5%ae%9e%e7%8e%b0div%e5%8f%af%e7%bc%96%e8%be%91%e7%9a%84%e5%b8%b8%e8%a7%81%e6%96%b9%e6%b3%95/</guid>
		<description><![CDATA[功能：实现网页内容的即时编辑，增加页面的可用性、交互性。 方法1：直接通过textarea标签实现，请运行这个Demo。 思路：将textarea通过CSS样式设计成让用户感觉不像是textarea的样子，通过onblur、oumouseout等属性进行ajax保存用户数据。 方法二：通过document.cr&#101;ateElement的方法向页面增加input来实现。请运行这个Demo。 思路： 1、当用户鼠标经过可编辑区域时，用背景色等方式提醒用户该区域可编辑。 2、当用户鼠标点击该区域时，也就是onclick事件时，先将原来的内容清掉，将临时创建出来一个输入框和一个输入按扭。 3、用户修改完后，点击“保存”按扭时通过ajax向数据库中写入新的数据。 PS：第二个方法的代码还有点问题，有空再来调试一下。]]></description>
			<content:encoded><![CDATA[<p>功能：实现网页内容的即时编辑，增加页面的可用性、交互性。<br />
方法1：直接通过textarea标签实现，请运行<a href="http://www.oneflash.net/demo/div-edit-1.html" target="_blank">这个Demo</a>。</p>
<p>思路：将textarea通过CSS样式设计成让用户感觉不像是textarea的样子，通过onblur、oumouseout等属性进行ajax保存用户数据。</p>
<p>方法二：通过document.cr&#101;ateElement的方法向页面增加input来实现。请运行<a href="http://www.oneflash.net/demo/div-edit-2.html" target="_blank">这个Demo</a>。</p>
<p>思路：<br />
1、当用户鼠标经过可编辑区域时，用背景色等方式提醒用户该区域可编辑。<br />
2、当用户鼠标点击该区域时，也就是onclick事件时，先将原来的内容清掉，将临时创建出来一个输入框和一个输入按扭。<br />
3、用户修改完后，点击“保存”按扭时通过ajax向数据库中写入新的数据。</p>
<p>PS：第二个方法的代码还有点问题，有空再来调试一下。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.oneflash.net/2007/01/div-edit-enable/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>代替marquee的滚动字幕效果代码</title>
		<link>http://www.oneflash.net/2007/01/js-marquee/</link>
		<comments>http://www.oneflash.net/2007/01/js-marquee/#comments</comments>
		<pubDate>Mon, 08 Jan 2007 09:00:00 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[Web技术]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://oneflash.net/1970/01/%e4%bb%a3%e6%9b%bfmarquee%e7%9a%84%e6%bb%9a%e5%8a%a8%e5%ad%97%e5%b9%95%e6%95%88%e6%9e%9c%e4%bb%a3%e7%a0%81/</guid>
		<description><![CDATA[由于marquee标签现在用得是越来越少了，所以滚动效果的做法大多也都改用javascript来实现了，至于不明白为什么不直接用marquee标签的朋友，不妨先阅读一下这篇文章。 第一种方法：用javascript模拟marquee的做法。 出处：网易游戏 个人观点：从web可用性角度上讲，我们在采用这段代码的同时要考虑到noscript环境下的可用性，建议将内容还是以下边代码的形式出现在页面中。如： 然后用脚本去设置隐藏，将列表项读进javascript中定义的数组中。即可达到在noscript环境下也能正常看到内容列表。 第二种方法：这个更强，能自动根据内容自动进行左右滚动，解决了宽度太小造成的截取问题。 原文作者：风动人 个人观点：从xhtml的语义化的角度看，页面内容中滥用div标签现象比较严重，可改成ul/li形式。 第三种是最精简的，代码非常少。 原文作者：cityvoice 个人观点：太短小精干了，如果你喜欢简单的话，这个也可以考虑的。]]></description>
			<content:encoded><![CDATA[<p>由于marquee标签现在用得是越来越少了，所以滚动效果的做法大多也都改用javascript来实现了，至于不明白为什么不直接用marquee标签的朋友，不妨先阅读一下<a target="_blank" href="http://bbs.blueidea.com/viewthread.php?tid=2562919&amp;page=">这篇文章</a>。<br />
第一种方法：用javascript模拟marquee的做法。<br />
出处：<a target="_blank" href="http://xyq.163.com/include/news-hotscroll.html">网易游戏</a>
<pre class="brush: xml; title: ; notranslate">
&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=gb2312&quot; /&gt;
&lt;title&gt;热点新闻&lt;/title&gt;
&lt;style type=&quot;text/css&quot;&gt;
&lt;!--
body {
    margin: 0px;
    font-size: 12px;
    color: #938C43;
    line-height: 150%;
    text-align:center;
}
a:link{color: #9D943A;font-size:12px;}
a:hover{color: #FF3300;font-size:12px;}
a:visited{color: #9D943A;font-size:12px;}
a.red:link{color: #ff0000;font-size:12px;}
a.red:hover{color: #ff0000;font-size:12px;}
a.red:visited{color: #ff0000;font-size:12px;}
#marqueeBox{background:#f7f7f7;border:1px solid silver;padding:1px;text-align:center;margin:0 auto;}
--&gt;
&lt;/style&gt;
&lt;/head&gt;

&lt;body&gt;
&lt;h4&gt;滚动新闻&lt;/h4&gt;
&lt;script language=&quot;JavaScript&quot; type=&quot;text/javascript&quot;&gt;
var marqueeContent=new Array();
marqueeContent[0]=&quot;&lt;a href=http://xyq.163.com/news/2006/11/2-2-20061102170913.html target=_blank&gt;用“梦幻密保”快速取回帐号密码&lt;/a&gt;&quot;;
marqueeContent[1]=&quot;&lt;a href=http://ekey.163.com/ target=_blank&gt;网易将军令官方网站&lt;/a&gt;&quot;;
marqueeContent[2]=&quot;&lt;a href=http://xyq.163.com/download/wallpaper.htm target=_blank&gt;最新壁纸下载&lt;/a&gt;&quot;;
marqueeContent[3]=&quot;&lt;a href=http://xyq.163.com/download/around.htm target=_blank&gt;最新屏保下载&lt;/a&gt;&quot;;
var marqueeInterval=new Array();
var marqueeId=0;
var marqueeDelay=2000;
var marqueeHeight=20;
function initMarquee() {
    var str=marqueeContent[0];
    document.write('&lt;div id=&quot;marqueeBox&quot; style=&quot;overflow:hidden;width:250px;height:'+marqueeHeight+'px&quot; onmouseover=&quot;clearInterval(marqueeInterval[0])&quot; onmouseout=&quot;marqueeInterval[0]=setInterval(\'startMarquee()\',marqueeDelay)&quot;&gt;&lt;div&gt;'+str+'&lt;/div&gt;&lt;/div&gt;');
    marqueeId++;
    marqueeInterval[0]=setInterval(&quot;startMarquee()&quot;,marqueeDelay);
}
function startMarquee() {
    var str=marqueeContent[marqueeId];
    marqueeId++;
    if(marqueeId&gt;=marqueeContent.length) marqueeId=0;
    if(document.getElementById(&quot;marqueeBox&quot;).childNodes.length==1) {
    var nextLine=document.createElement('DIV');
    nextLine.innerHTML=str;
    document.getElementById(&quot;marqueeBox&quot;).appendChild(nextLine);
    }
    else {
        document.getElementById(&quot;marqueeBox&quot;).childNodes[0].innerHTML=str;
        document.getElementById(&quot;marqueeBox&quot;).appendChild(document.getElementById(&quot;marqueeBox&quot;).childNodes[0]);
        document.getElementById(&quot;marqueeBox&quot;).scrollTop=0;
    }
    clearInterval(marqueeInterval[1]);
    marqueeInterval[1]=setInterval(&quot;scrollMarquee()&quot;,20);
}
function scrollMarquee() {
    document.getElementById(&quot;marqueeBox&quot;).scrollTop++;
    if(document.getElementById(&quot;marqueeBox&quot;).scrollTop%marqueeHeight==(marqueeHeight-1)){
    clearInterval(marqueeInterval[1]);
    }
}
initMarquee();
&lt;/script&gt;

&lt;/body&gt;
&lt;/html&gt;
</pre>
<p>个人观点：从web可用性角度上讲，我们在采用这段代码的同时要考虑到noscript环境下的可用性，建议将内容还是以下边代码的形式出现在页面中。如：</p>
<pre class="brush: xml; title: ; notranslate">&lt;div id=&quot;newslist&quot;&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=http://xyq.163.com/news/2006/11/2-2-20061102170913.html target=_blank&gt;用“梦幻密保”快速取回帐号密码&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=http://ekey.163.com/ target=_blank&gt;网易将军令官方网站&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=http://xyq.163.com/download/wallpaper.htm target=_blank&gt;最新壁纸下载&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=http://xyq.163.com/download/around.htm target=_blank&gt;最新屏保下载&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
</pre>
<p>然后用脚本去设置隐藏，将列表项读进javascript中定义的数组中。即可达到在noscript环境下也能正常看到内容列表。</p>
<p>第二种方法：这个更强，能自动根据内容自动进行左右滚动，解决了宽度太小造成的截取问题。<br />
原文作者：<a target="_blank" href="http://blog.iyi.cn/hily/archives/2006/02/post_8.html">风动人</a></p>
<pre class="brush: xml; title: ; notranslate">
&lt;html&gt;
&lt;head&gt;
&lt;title&gt; SCROLL &lt;/title&gt;
&lt;style type=&quot;text/css&quot;&gt;
#infozone{font-size:12px;color:#aa6;overflow:hidden;width:100px;height:20px;}
#infozone div{height:20px;line-height:20px;white-space:nowrap;overflow:hidden;}
&lt;/style&gt;
&lt;script type=&quot;text/javascript&quot;&gt;
var tc;
window.onload=function(){
    var o=document.getElementById('infozone');hscroll(o);
    window.setInterval(function(){window.clearTimeout(tc);o.firstChild.style.marginLeft='0px';scrollup(o,20,0);},10000);
}
function scrollup(o,d,c){
    if(d==c){
        var t=o.firstChild.cloneNode(true);
        o.removeChild(o.firstChild);o.appendChild(t);
        t.style.marginTop=o.firstChild.style.marginTop='0px';
        hscroll(o);
    }
    else{
        ch=false;var s=3,c=c+s,l=(c&gt;=d?c-d:0);
        o.firstChild.style.marginTop=-c+l+'px';
        window.setTimeout(function(){scrollup(o,d,c-l)},50);
    }
}

function hscroll(o){
    var w1=o.firstChild.offsetWidth,w2=o.offsetWidth;
    if(w1&lt;=w2)return;
    tc=window.setTimeout(function(){hs(o,w1-w2,0,w1-w2)},3500);
}

function hs(o,d,c,p){
    c++;var t=(c&gt;0?-c:c);o.firstChild.style.marginLeft=t+'px';
    if(c==d){if(d==0){tc=window.setTimeout(function(){hs(o,p,0,p)},2500);}else tc=window.setTimeout(function(){hs(o,0,-p,p)},3500);}
    else tc=window.setTimeout(function(){hs(o,d,c,p)},5);
}
&lt;/script&gt;
&lt;/head&gt;

&lt;body&gt;
&lt;div id=&quot;infozone&quot;&gt;&lt;div&gt;温岚 - 屋顶(周杰伦 对唱版)&lt;/div&gt;&lt;div&gt;范玮琪 - 那些花儿&lt;/div&gt;&lt;div&gt;张韶涵 - 娃娃&lt;/div&gt;&lt;div&gt;孙楠&amp;韩红 - 美丽的神话&lt;/div&gt;&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre>
<p>个人观点：从xhtml的语义化的角度看，页面内容中滥用div标签现象比较严重，可改成ul/li形式。</p>
<p>第三种是最精简的，代码非常少。<br />
原文作者：<a target="_blank" href="http://bbs.blueidea.com/viewthread.php?tid=2707195&amp;extra=page%3D1%26amp%3Bfilter%3Drate">cityvoice</a></p>
<pre class="brush: xml; title: ; notranslate">
&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0 Transitional//EN&quot;&gt;
&lt;HTML&gt;
&lt;HEAD&gt;
  &lt;TITLE&gt; New Document &lt;/TITLE&gt;
  &lt;META NAME=&quot;Generator&quot; CONTENT=&quot;EditPlus&quot;&gt;
  &lt;META NAME=&quot;Author&quot; CONTENT=&quot;&quot;&gt;
  &lt;META NAME=&quot;Keywords&quot; CONTENT=&quot;&quot;&gt;
  &lt;META NAME=&quot;Description&quot; CONTENT=&quot;&quot;&gt;
  &lt;style type=&quot;text/css&quot;&gt;
    #newslist{
        background:#f7f7f7;border:1px solid silver;padding:1px;height:20px;line-height:20px;width:300px;
    }
    #contain{
        font-size:12px;overflow:hidden;list-style:none;width:300px;height:20px;margin:0px;padding:0;
    }
    #contain li{
        height:20px;line-height:20px;white-space:nowrap;overflow:hidden;
    }
&lt;/style&gt;
&lt;/HEAD&gt;

&lt;BODY&gt;
    &lt;div id=&quot;newslist&quot;&gt;
        &lt;ul id=&quot;contain&quot;&gt;
            &lt;li&gt;&lt;a href=&quot;http:/www.iwcn.net&quot;&gt;温岚 - 屋顶(左右摆动)&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href=&quot;http:/www.iwcn.net&quot;&gt;范玮琪 - 那些花儿&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href=&quot;http:/www.iwcn.net&quot;&gt;张韶涵 - 娃娃&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href=&quot;http:/www.iwcn.net&quot;&gt;孙楠&amp;韩红 - 美丽的神话&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href=&quot;http:/www.iwcn.net&quot;&gt;张信哲 - 白月光&lt;/a&gt;&lt;/li&gt;
        &lt;/ul&gt;
    &lt;/div&gt;
&lt;SCRIPT LANGUAGE=&quot;JavaScript&quot;&gt;
function xx(){
var container=document.getElementById(&quot;contain&quot;);
container.appendChild(container.firstChild);
}
setInterval(&quot;xx()&quot;,3000);
&lt;/SCRIPT&gt;
&lt;/BODY&gt;
&lt;/HTML&gt;
</pre>
<p>个人观点：太短小精干了，如果你喜欢简单的话，这个也可以考虑的。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.oneflash.net/2007/01/js-marquee/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>改善用户体验之alert提示效果</title>
		<link>http://www.oneflash.net/2006/10/js-alert/</link>
		<comments>http://www.oneflash.net/2006/10/js-alert/#comments</comments>
		<pubDate>Sat, 28 Oct 2006 00:00:00 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[Web技术]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://oneflash.net/1970/01/%e6%94%b9%e5%96%84%e7%94%a8%e6%88%b7%e4%bd%93%e9%aa%8c%e4%b9%8balert%e6%8f%90%e7%a4%ba%e6%95%88%e6%9e%9c/</guid>
		<description><![CDATA[类似于新浪邮箱的提示效果。比较独立。在wenming版主的帮助下，已解决了高度不能适应的BUG。 使用方法很简单，在需要弹出提示的页面先引用alert.js脚本文件,如: 然后直接在需要提出处使用： 即可.不需要额外添加HTML代码。完整Demo请看这里。 点击下载此文件]]></description>
			<content:encoded><![CDATA[<p>类似于新浪邮箱的提示效果。比较独立。在wenming版主的帮助下，已解决了高度不能适应的BUG。</p>
<p>使用方法很简单，在需要弹出提示的页面先引用alert.js脚本文件,如:</p>
<pre class="brush: xml; title: ; notranslate">
&lt;script type=&quot;text/javascript&quot; src=&quot;alert.js&quot;&gt;&lt;/script&gt;
</pre>
<p>然后直接在需要提出处使用：</p>
<pre class="brush: jscript; title: ; notranslate">
sAlert(&quot;需要提示的信息&quot;);
</pre>
<p>即可.不需要额外添加HTML代码。<a href="http://www.oneflash.net/demo/jsalert.html" target="_blank">完整Demo请看这里</a>。<br />
<a href="attachments/month_0611/r2006113023473.rar" target="_blank">点击下载此文件</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.oneflash.net/2006/10/js-alert/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

