<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet href='http://feed.chuo.me/styles/temp01.xsl' type='text/xsl' ?><!--这是一个由Feedsy提供技术支持的Feed，为了提高读者阅读的体验，以及满足用户美化自己Feed的需要，我们设计了多种精美的Feed模板，提供给大家选择，所有最终呈现出来的样式，皆由用户自愿选择使用，未经许可，任何团体和个人，请不要擅自修改样式或者盗用，这是对于用户选择权的尊重。--><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:fs="http://www.feedsky.com/namespace/feed" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link href="http://feed.chuo.me" type="application/rss+xml" rel="self"></atom:link><fs:self_link href="http://feed.feedsky.com/popomore" type="application/rss+xml"></fs:self_link><lastBuildDate>Sat, 27 Feb 2010 20:44:50 GMT</lastBuildDate><title>不要变笨</title><link atom:type="text/html">http://chuo.me</link><generator xmlns="http://www.w3.org/2005/Atom" uri="http://wordpress.org/" version="2.8.6">WordPress</generator><id xmlns="http://www.w3.org/2005/Atom">http://chuo.me/feed/atom/</id><link xmlns="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://chuo.me/feed/atom/"></link><pubDate>Sat, 27 Feb 2010 20:50:59 GMT</pubDate><item><title>dropbox+utorrent实现远程bt下载</title><link atom:type="text/html">http://chuo.me/2010/02/dropbox-utorrent-bt/</link><author xmlns="http://www.w3.org/2005/Atom"><name>popomore</name></author><id xmlns="http://www.w3.org/2005/Atom">http://chuo.me/?p=660</id><content xmlns="http://www.w3.org/2005/Atom" type="html" xml:base="http://chuo.me/2010/02/dropbox-utorrent-bt/">&lt;blockquote&gt;&lt;p&gt;此文没有任何技术含量,只是一个应用的tip&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;不知道你有没有想过在公司下载种子，家里的电脑就能直接下载了呢，其实要做到这样很简单，只需以下简单几步。这里要用到&lt;a href=&quot;http://www.dropbox.com/&quot;&gt;dropbox&lt;/a&gt;和&lt;a href=&quot;http://www.utorrent.com/downloads&quot;&gt;utorrent&lt;/a&gt;，如果没注册dropbox还可以&lt;a href=&quot;https://www.dropbox.com/referrals/NTM1ODUzNDk&quot;&gt;帮我扩展点容量&lt;/a&gt;。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;首先在两台电脑上都安装dropbox，并新建一个目录存放种子，我建了一个torrent的目录。/My dropbox/torrent.。&lt;/li&gt;
&lt;li&gt;建完后，你只需将种子放入这个文件夹下，那么两边都会有这个文件&lt;/li&gt;
&lt;li&gt;现在只需让bt客户端去加载种子就可以了，我用utorrent是因为小巧而且便携，并且他自带了这个功能。在设置-&amp;gt;目录的下部，勾选自动载入torrent于，选择你刚建的那个目录。&lt;br /&gt;
&lt;img class=&quot;alignnone size-full wp-image-662&quot; title=&quot;utorrent&quot; src=&quot;http://chuo.me/wp-content/uploads/2010/02/a.png&quot; alt=&quot;utorrent&quot; width=&quot;494&quot; height=&quot;77&quot; /&gt;&lt;/li&gt;
&lt;li&gt;现在你只要将种子考入该文件夹，bt就会自动下载。你也可以将这个dropbox的文件夹与其他人共享，那么其他人传的种子都会自动下载。&lt;/li&gt;
&lt;li&gt;其他bt客户端如果支持该功能也可以使用，但我并没有试过是否真正可行。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;就像一开始说的，本文没有技术含量，全归功于dropbox。我在很早以前就&lt;a href=&quot;http://chuo.me/2008/11/dropbox/&quot;&gt;介绍过dropbox&lt;/a&gt;，希望能探索出更多使用dropbox的方法。&lt;br /&gt;
&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/11/dropbox/&quot; title=&quot;换个地方存放文件&quot;&gt;换个地方存放文件&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content><thr:total>0</thr:total><description>此文没有任何技术含量,只是一个应用的tip
不知道你有没有想过在公司下载种子，家里的电脑就能直接下载了呢，其实要做到这样很简单，只需以下简单几步。这里要用到dropbox和utorrent，如果没注册dropbox还可以帮我扩展点容量。

首先在两台电脑上都安装dropbox，并新建一个目录存放种子，我建了一个torrent的目录。/My dropbox/torrent.。
建完后，你只需将种子放入这个文件夹下，那么两边都会有这个文件
现在只需让bt客户端去加载种子就可以了，我用utorrent是因为小巧而且便携，并且他自带了这个功能。在设置-&amp;#62;目录的下部，勾选自动载入torrent于，选择你刚建的那个目录。

现在你只要将种子考入该文件夹，bt就会自动下载。你也可以将这个dropbox的文件夹与其他人共享，那么其他人传的种子都会自动下载。
其他bt客户端如果支持该功能也可以使用，但我并没有试过是否真正可行。

就像一开始说的，本文没有技术含量，全归功于dropbox。我在很早以前就介绍过dropbox，希望能探索出更多使用dropbox的方法。
Related

换个地方存放文件&lt;img src=&quot;http://www1.feedsky.com/t1/336884262/popomore/feedsky/s.gif?r=http://chuo.me/2010/02/dropbox-utorrent-bt/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884262/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884262/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=e8d204115fab8cf368193a5f754e0cd8&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=e8d204115fab8cf368193a5f754e0cd8&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=ffe96f6df876de5fdffb714c7838defd&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=ffe96f6df876de5fdffb714c7838defd&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=2069352b7935debc37e2e6f05e67df10&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=2069352b7935debc37e2e6f05e67df10&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=20db2c034f57e8379200d3141da700ba&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=20db2c034f57e8379200d3141da700ba&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><content:encoded>&lt;blockquote&gt;&lt;p&gt;此文没有任何技术含量,只是一个应用的tip&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;不知道你有没有想过在公司下载种子，家里的电脑就能直接下载了呢，其实要做到这样很简单，只需以下简单几步。这里要用到&lt;a href=&quot;http://www.dropbox.com/&quot;&gt;dropbox&lt;/a&gt;和&lt;a href=&quot;http://www.utorrent.com/downloads&quot;&gt;utorrent&lt;/a&gt;，如果没注册dropbox还可以&lt;a href=&quot;https://www.dropbox.com/referrals/NTM1ODUzNDk&quot;&gt;帮我扩展点容量&lt;/a&gt;。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;首先在两台电脑上都安装dropbox，并新建一个目录存放种子，我建了一个torrent的目录。/My dropbox/torrent.。&lt;/li&gt;
&lt;li&gt;建完后，你只需将种子放入这个文件夹下，那么两边都会有这个文件&lt;/li&gt;
&lt;li&gt;现在只需让bt客户端去加载种子就可以了，我用utorrent是因为小巧而且便携，并且他自带了这个功能。在设置-&amp;gt;目录的下部，勾选自动载入torrent于，选择你刚建的那个目录。&lt;br /&gt;
&lt;img class=&quot;alignnone size-full wp-image-662&quot; title=&quot;utorrent&quot; src=&quot;http://chuo.me/wp-content/uploads/2010/02/a.png&quot; alt=&quot;utorrent&quot; width=&quot;494&quot; height=&quot;77&quot; /&gt;&lt;/li&gt;
&lt;li&gt;现在你只要将种子考入该文件夹，bt就会自动下载。你也可以将这个dropbox的文件夹与其他人共享，那么其他人传的种子都会自动下载。&lt;/li&gt;
&lt;li&gt;其他bt客户端如果支持该功能也可以使用，但我并没有试过是否真正可行。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;就像一开始说的，本文没有技术含量，全归功于dropbox。我在很早以前就&lt;a href=&quot;http://chuo.me/2008/11/dropbox/&quot;&gt;介绍过dropbox&lt;/a&gt;，希望能探索出更多使用dropbox的方法。&lt;br /&gt;
&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/11/dropbox/&quot; title=&quot;换个地方存放文件&quot;&gt;换个地方存放文件&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/336884262/popomore/feedsky/s.gif?r=http://chuo.me/2010/02/dropbox-utorrent-bt/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884262/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884262/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=e8d204115fab8cf368193a5f754e0cd8&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=e8d204115fab8cf368193a5f754e0cd8&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=ffe96f6df876de5fdffb714c7838defd&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=ffe96f6df876de5fdffb714c7838defd&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=2069352b7935debc37e2e6f05e67df10&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=2069352b7935debc37e2e6f05e67df10&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=20db2c034f57e8379200d3141da700ba&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=20db2c034f57e8379200d3141da700ba&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><category domain="http://chuo.me">关注</category><category domain="http://chuo.me">bt</category><category domain="http://chuo.me">dropbox</category><category domain="http://chuo.me">utorrent</category><pubDate>Sun, 28 Feb 2010 04:44:50 +0800</pubDate><guid isPermaLink="false">http://chuo.me/?p=660</guid><dc:creator>popomore</dc:creator><fs:srclink>http://chuo.me/2010/02/dropbox-utorrent-bt/</fs:srclink><fs:srcfeed>http://chuo.me/feed/atom/</fs:srcfeed><fs:itemid>feedsky/popomore/~7314125/336884262/5194874</fs:itemid></item><item><title>换permalink页面404的错误</title><link atom:type="text/html">http://chuo.me/2009/12/permalink-404/</link><author xmlns="http://www.w3.org/2005/Atom"><name>popomore</name></author><id xmlns="http://www.w3.org/2005/Atom">http://chuo.me/?p=651</id><content xmlns="http://www.w3.org/2005/Atom" type="html" xml:base="http://chuo.me/2009/12/permalink-404/">&lt;p&gt;以前博客的链接地址是以参数的形式存在的,这样用户的体验并不好,然后打算把他设成日期加文章名的形式,这样也更具有REST风格.但是问题来了,一设成固定链接,则所有的链接都失效了.和&lt;a href=&quot;http://wutiam.net/2008/06/resolve-wordpress-permalinks-404-error/&quot;&gt;这篇文章&lt;/a&gt;是同样的问题,通过设置&lt;code class=&quot;codecolorer text default&quot;&gt;&lt;span class=&quot;text&quot;&gt;/index.php/%year%/%monthnum%/%postname%/&lt;/span&gt;&lt;/code&gt;也能访问,但这篇文章并不能解决我的问题.最后花了半天时间把问题解决了,这里总结一下.&lt;/p&gt;
&lt;h3&gt;rewrite模块&lt;/h3&gt;
&lt;p&gt;重定向需要用到rewrite模块,所以首先可以在phpinfo里查看rewrite模块是否已经打开.如果没有需要去http.conf将以下代码的注释去掉.&lt;/p&gt;
&lt;div class=&quot;codecolorer-container apache twitlight&quot; style=&quot;overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;&quot;&gt;&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;&quot;&gt;&lt;div&gt;1&lt;br /&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class=&quot;apache codecolorer&quot; style=&quot;padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap&quot;&gt;&lt;span style=&quot;color: #adadad; font-style: italic;&quot;&gt;#LoadModule rewrite_module modules/mod_rewrite.so&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;
&lt;h3&gt;AllowOverride&lt;/h3&gt;
&lt;p&gt;这个可能很多人没注意,我就是遇到这个问题.要让apache能够解析.htaccess文件,就必须设置AllowOverride参数.如果设为none,那么文件就不会生效.我偷懒设置为all,更多参数可以看&lt;a href=&quot;http://www.ccvita.com/281.html&quot;&gt;这里&lt;/a&gt;.&lt;/p&gt;
&lt;div class=&quot;codecolorer-container apache twitlight&quot; style=&quot;overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;&quot;&gt;&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;&quot;&gt;&lt;div&gt;1&lt;br /&gt;2&lt;br /&gt;3&lt;br /&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class=&quot;apache codecolorer&quot; style=&quot;padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap&quot;&gt;&amp;lt;&lt;span style=&quot;color: #000000; font-weight:bold;&quot;&gt;Directory&lt;/span&gt; /&amp;gt;&lt;br /&gt;
&lt;span style=&quot;color: #00007f;&quot;&gt;AllowOverride&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;None&lt;/span&gt;&lt;br /&gt;
&amp;lt;/&lt;span style=&quot;color: #000000; font-weight:bold;&quot;&gt;Directory&lt;/span&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;
&lt;h3&gt;.htaccess&lt;/h3&gt;
&lt;p&gt;这个比较重要,如何重定向主要就看这个文件,在这里提供一个模板好了.&lt;/p&gt;
&lt;div class=&quot;codecolorer-container text twitlight&quot; style=&quot;overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;&quot;&gt;&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;&quot;&gt;&lt;div&gt;1&lt;br /&gt;2&lt;br /&gt;3&lt;br /&gt;4&lt;br /&gt;5&lt;br /&gt;6&lt;br /&gt;7&lt;br /&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class=&quot;text codecolorer&quot; style=&quot;padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap&quot;&gt;&amp;lt;IfModule mod_rewrite.c&amp;gt;&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteBase /&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-d&lt;br /&gt;
RewriteRule . /index.php [L]&lt;br /&gt;
&amp;lt;/IfModule&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;
&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/03/migrate-from-blogger-to-wordpress/&quot; title=&quot;从blogger搬到wordpress&quot;&gt;从blogger搬到wordpress&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/03/blog-movement/&quot; title=&quot;博客搬家&quot;&gt;博客搬家&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content><thr:total>0</thr:total><description>以前博客的链接地址是以参数的形式存在的,这样用户的体验并不好,然后打算把他设成日期加文章名的形式,这样也更具有REST风格.但是问题来了,一设成固定链接,则所有的链接都失效了.和这篇文章是同样的问题,通过设置/index.php/%year%/%monthnum%/%postname%/也能访问,但这篇文章并不能解决我的问题.最后花了半天时间把问题解决了,这里总结一下.
rewrite模块
重定向需要用到rewrite模块,所以首先可以在phpinfo里查看rewrite模块是否已经打开.如果没有需要去http.conf将以下代码的注释去掉.
1#LoadModule rewrite_module modules/mod_rewrite.so
AllowOverride
这个可能很多人没注意,我就是遇到这个问题.要让apache能够解析.htaccess文件,就必须设置AllowOverride参数.如果设为none,那么文件就不会生效.我偷懒设置为all,更多参数可以看这里.
123&amp;#60;Directory /&amp;#62;
AllowOverride None
&amp;#60;/Directory&amp;#62;
.htaccess
这个比较重要,如何重定向主要就看这个文件,在这里提供一个模板好了.
1234567&amp;#60;IfModule mod_rewrite.c&amp;#62;
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
&amp;#60;/IfModule&amp;#62;
Related

从blogger搬到wordpress
博客搬家&lt;img src=&quot;http://www1.feedsky.com/t1/336884263/popomore/feedsky/s.gif?r=http://chuo.me/2009/12/permalink-404/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884263/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884263/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=fd6514b398c181cd5ead2069873a9317&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=fd6514b398c181cd5ead2069873a9317&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=71027a13067eebc461f2b4a2244d5ed2&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=71027a13067eebc461f2b4a2244d5ed2&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=1322b99df41ec8f84ae5ef3ac19e08f5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=1322b99df41ec8f84ae5ef3ac19e08f5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=f62c3c8880d51b048675a77f2ff223a7&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=f62c3c8880d51b048675a77f2ff223a7&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><content:encoded>&lt;p&gt;以前博客的链接地址是以参数的形式存在的,这样用户的体验并不好,然后打算把他设成日期加文章名的形式,这样也更具有REST风格.但是问题来了,一设成固定链接,则所有的链接都失效了.和&lt;a href=&quot;http://wutiam.net/2008/06/resolve-wordpress-permalinks-404-error/&quot;&gt;这篇文章&lt;/a&gt;是同样的问题,通过设置&lt;code class=&quot;codecolorer text default&quot;&gt;&lt;span class=&quot;text&quot;&gt;/index.php/%year%/%monthnum%/%postname%/&lt;/span&gt;&lt;/code&gt;也能访问,但这篇文章并不能解决我的问题.最后花了半天时间把问题解决了,这里总结一下.&lt;/p&gt;
&lt;h3&gt;rewrite模块&lt;/h3&gt;
&lt;p&gt;重定向需要用到rewrite模块,所以首先可以在phpinfo里查看rewrite模块是否已经打开.如果没有需要去http.conf将以下代码的注释去掉.&lt;/p&gt;
&lt;div class=&quot;codecolorer-container apache twitlight&quot; style=&quot;overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;&quot;&gt;&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;&quot;&gt;&lt;div&gt;1&lt;br /&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class=&quot;apache codecolorer&quot; style=&quot;padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap&quot;&gt;&lt;span style=&quot;color: #adadad; font-style: italic;&quot;&gt;#LoadModule rewrite_module modules/mod_rewrite.so&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;
&lt;h3&gt;AllowOverride&lt;/h3&gt;
&lt;p&gt;这个可能很多人没注意,我就是遇到这个问题.要让apache能够解析.htaccess文件,就必须设置AllowOverride参数.如果设为none,那么文件就不会生效.我偷懒设置为all,更多参数可以看&lt;a href=&quot;http://www.ccvita.com/281.html&quot;&gt;这里&lt;/a&gt;.&lt;/p&gt;
&lt;div class=&quot;codecolorer-container apache twitlight&quot; style=&quot;overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;&quot;&gt;&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;&quot;&gt;&lt;div&gt;1&lt;br /&gt;2&lt;br /&gt;3&lt;br /&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class=&quot;apache codecolorer&quot; style=&quot;padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap&quot;&gt;&amp;lt;&lt;span style=&quot;color: #000000; font-weight:bold;&quot;&gt;Directory&lt;/span&gt; /&amp;gt;&lt;br /&gt;
&lt;span style=&quot;color: #00007f;&quot;&gt;AllowOverride&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;None&lt;/span&gt;&lt;br /&gt;
&amp;lt;/&lt;span style=&quot;color: #000000; font-weight:bold;&quot;&gt;Directory&lt;/span&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;
&lt;h3&gt;.htaccess&lt;/h3&gt;
&lt;p&gt;这个比较重要,如何重定向主要就看这个文件,在这里提供一个模板好了.&lt;/p&gt;
&lt;div class=&quot;codecolorer-container text twitlight&quot; style=&quot;overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;&quot;&gt;&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;&quot;&gt;&lt;div&gt;1&lt;br /&gt;2&lt;br /&gt;3&lt;br /&gt;4&lt;br /&gt;5&lt;br /&gt;6&lt;br /&gt;7&lt;br /&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class=&quot;text codecolorer&quot; style=&quot;padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap&quot;&gt;&amp;lt;IfModule mod_rewrite.c&amp;gt;&lt;br /&gt;
RewriteEngine On&lt;br /&gt;
RewriteBase /&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-f&lt;br /&gt;
RewriteCond %{REQUEST_FILENAME} !-d&lt;br /&gt;
RewriteRule . /index.php [L]&lt;br /&gt;
&amp;lt;/IfModule&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;
&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/03/migrate-from-blogger-to-wordpress/&quot; title=&quot;从blogger搬到wordpress&quot;&gt;从blogger搬到wordpress&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/03/blog-movement/&quot; title=&quot;博客搬家&quot;&gt;博客搬家&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/336884263/popomore/feedsky/s.gif?r=http://chuo.me/2009/12/permalink-404/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884263/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884263/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=fd6514b398c181cd5ead2069873a9317&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=fd6514b398c181cd5ead2069873a9317&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=71027a13067eebc461f2b4a2244d5ed2&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=71027a13067eebc461f2b4a2244d5ed2&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=1322b99df41ec8f84ae5ef3ac19e08f5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=1322b99df41ec8f84ae5ef3ac19e08f5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=f62c3c8880d51b048675a77f2ff223a7&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=f62c3c8880d51b048675a77f2ff223a7&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><category domain="http://chuo.me">讨论</category><category domain="http://chuo.me">404</category><category domain="http://chuo.me">php</category><category domain="http://chuo.me">wordpress</category><pubDate>Thu, 31 Dec 2009 14:40:37 +0800</pubDate><guid isPermaLink="false">http://chuo.me/?p=651</guid><dc:creator>popomore</dc:creator><fs:srclink>http://chuo.me/2009/12/permalink-404/</fs:srclink><fs:srcfeed>http://chuo.me/feed/atom/</fs:srcfeed><fs:itemid>feedsky/popomore/~7314125/336884263/5194874</fs:itemid></item><item><title>纯CSS解决ie6下position:fixed问题</title><link atom:type="text/html">http://chuo.me/2009/12/ie6-position-fixed-bug/</link><author xmlns="http://www.w3.org/2005/Atom"><name>popomore</name></author><id xmlns="http://www.w3.org/2005/Atom">http://chuo.me/?p=640</id><content xmlns="http://www.w3.org/2005/Atom" type="html" xml:base="http://chuo.me/2009/12/ie6-position-fixed-bug/">&lt;p&gt;前不久做一个网页,需要做一个分页始终位于底部,不会因为窗口的缩放和滚动条的滚动而变化.那么一开始想到的肯定是&lt;em&gt;position:fixed&lt;/em&gt;,只要设置这个CSS属性就能达到刚刚说的目的,但世界永远不是这么完美的,因为有IE6的存在.IE6不支持这个属性,所以问题就来了.&lt;/p&gt;
&lt;h3&gt;需要解决的问题&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;当页面内容比较少时,分页也要位于底部,不会随着内容的多少而移动.这里设置absolute就能解决问题,但当有滚动条出现时分页确会随着移动,这就是要解决的第二个问题.&lt;/li&gt;
&lt;li&gt;当页面内容比较多时,会出现滚动条,当页面滚动时,分页也必须不会随着一起移动.&lt;/li&gt;
&lt;li&gt;窗口变化时也会影响到上面两个方面&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;JS的解决方案&lt;/h3&gt;
&lt;p&gt;JS是我最不愿使用的解决方案,因为这种纯样式的bug用JS来解决有点大材小用,而且JS需要DOM载入后才执行,有可能会出现闪屏的现象.&lt;/p&gt;
&lt;p&gt;JS的解决方案很简单,通过设置一个top来实现,top是指分页的上边距离document的上边的长度,可以被分解成下面几项(并不是完整的代码)&lt;/p&gt;
&lt;pre&gt;top = scrollTop + clientHeight - height(分页的高度)&lt;/pre&gt;
&lt;p&gt;&lt;img class=&quot;alignnone&quot; title=&quot;scrolltop&quot; src=&quot;http://www.developer.com/img/2007/06/Scroll05.jpg&quot; alt=&quot;&quot; width=&quot;514&quot; height=&quot;513&quot; /&gt;&lt;/p&gt;
&lt;p&gt;scrollTop和clientHeight分别用来解决上面两个问题,滚动条的滚动会影响到scrollTop,而窗口的变化会影响到clientHeight,所以当这两个事件被触发时必须重置top,于是就形成类似下面的代码,但这段脚本的刷新率会非常高,估计有性能问题.&lt;/p&gt;
&lt;pre&gt;window.onresize = window.onscroll = function(){
    //reset top
};&lt;/pre&gt;
&lt;h3&gt;CSS Expression的解决方案&lt;/h3&gt;
&lt;p&gt;上面这段脚本可以直接搬到CSS上来,因为CSS支持expression,可以通过JS代码来实现,不用事件监听,具体就不多说了,但这个也存在性能问题.&lt;/p&gt;
&lt;pre&gt;top:expreesion(scrollTop + clientHeight - height);&lt;/pre&gt;
&lt;h3&gt;纯CSS的解决方案&lt;/h3&gt;
&lt;p&gt;这里提供一种纯CSS的解决方案,其实也挺简单的,这里是&lt;a href=&quot;http://dl.dropbox.com/u/358534/jsdome/bug/ie6-position-fixed.html&quot;&gt;demo&lt;/a&gt;.先贴些代码&lt;/p&gt;
&lt;pre&gt;&amp;lt;body&amp;gt;
  &amp;lt;div id=&quot;container&quot;&amp;gt;&amp;lt;/div&amp;gt;
  &amp;lt;div id=&quot;bottom&quot;&amp;gt;&amp;lt;/div&amp;gt;
&amp;lt;/body&amp;gt;&lt;/pre&gt;
&lt;pre&gt;html, body {
 margin: 0;
 padding: 0;
 height: 100%;
 width: 100%;
 _overflow: hidden;
}

#container {
 _width: 100%;
 _height: 100%;
 _overflow-y: scroll;
}

#bottom {
 background-color: #0ff;
 height: 30px;
 width: 100%;
 position: fixed;
 bottom: 0;
 z-index: 999;

 /* ie6 fixed */
 _position: absolute;
 _bottom:-1px;
 _right: 17px;
}&lt;/pre&gt;
&lt;p&gt;将要固定的bottom和容器container放在并列的位置,将html,body,container都设为100%,那么可以把container当成body来使,将html和body设成overflow:hidden,而让container滚动,这时当文本溢出时只是container内部滚动,而bottom是放在container的外部,不会受其影响.&lt;/p&gt;
&lt;p&gt;问题已经解决了,但是由于bottom是盖在container上面的,所以也会盖住滚动条,设置一个right就能使各浏览器显示相同.&lt;/p&gt;
&lt;p&gt;上面几种方案我之前都有用过,所以我建议大家&lt;span style=&quot;color: #ff0000;&quot;&gt;纯样式问题最好不要动用JS,能用CSS解决的还是用CSS.&lt;/span&gt;&lt;br /&gt;
&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/03/top-left-in-css/&quot; title=&quot;CSS中的top和left&quot;&gt;CSS中的top和left&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/10/input-bug-under-strictmode/&quot; title=&quot;input在strict mode下的bug&quot;&gt;input在strict mode下的bug&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/09/css-browser/&quot; title=&quot;浏览器辨识CSS&quot;&gt;浏览器辨识CSS&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content><thr:total>5</thr:total><description>前不久做一个网页,需要做一个分页始终位于底部,不会因为窗口的缩放和滚动条的滚动而变化.那么一开始想到的肯定是position:fixed,只要设置这个CSS属性就能达到刚刚说的目的,但世界永远不是这么完美的,因为有IE6的存在.IE6不支持这个属性,所以问题就来了.
需要解决的问题

当页面内容比较少时,分页也要位于底部,不会随着内容的多少而移动.这里设置absolute就能解决问题,但当有滚动条出现时分页确会随着移动,这就是要解决的第二个问题.
当页面内容比较多时,会出现滚动条,当页面滚动时,分页也必须不会随着一起移动.
窗口变化时也会影响到上面两个方面

JS的解决方案
JS是我最不愿使用的解决方案,因为这种纯样式的bug用JS来解决有点大材小用,而且JS需要DOM载入后才执行,有可能会出现闪屏的现象.
JS的解决方案很简单,通过设置一个top来实现,top是指分页的上边距离document的上边的长度,可以被分解成下面几项(并不是完整的代码)
top = scrollTop + clientHeight - height(分页的高度)

scrollTop和clientHeight分别用来解决上面两个问题,滚动条的滚动会影响到scrollTop,而窗口的变化会影响到clientHeight,所以当这两个事件被触发时必须重置top,于是就形成类似下面的代码,但这段脚本的刷新率会非常高,估计有性能问题.
window.onresize = window.onscroll = function(){
    //reset top
};
CSS Expression的解决方案
上面这段脚本可以直接搬到CSS上来,因为CSS支持expression,可以通过JS代码来实现,不用事件监听,具体就不多说了,但这个也存在性能问题.
top:expreesion(scrollTop + clientHeight - height);
纯CSS的解决方案
这里提供一种纯CSS的解决方案,其实也挺简单的,这里是demo.先贴些代码
&amp;#60;body&amp;#62;
  &amp;#60;div id=&quot;container&quot;&amp;#62;&amp;#60;/div&amp;#62;
  &amp;#60;div id=&quot;bottom&quot;&amp;#62;&amp;#60;/div&amp;#62;
&amp;#60;/body&amp;#62;
html, body {
 margin: 0;
 padding: 0;
 height: 100%;
 width: 100%;
 _overflow: hidden;
}

#container {
 _width: 100%;
 _height: 100%;
 _overflow-y: scroll;
}

#bottom {
 background-color: #0ff;
 height: 30px;
 width: 100%;
 position: fixed;
 [...]&lt;img src=&quot;http://www1.feedsky.com/t1/336884264/popomore/feedsky/s.gif?r=http://chuo.me/2009/12/ie6-position-fixed-bug/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884264/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884264/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=8b12bb552a04f6287d72e480dcce978b&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=8b12bb552a04f6287d72e480dcce978b&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=74125643fef9e529180c96b3aaaecb16&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=74125643fef9e529180c96b3aaaecb16&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=23471411e57f881d6b5d0adac1f50ad9&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=23471411e57f881d6b5d0adac1f50ad9&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=80595d5a2e559cffbbaec192ae038530&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=80595d5a2e559cffbbaec192ae038530&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><content:encoded>&lt;p&gt;前不久做一个网页,需要做一个分页始终位于底部,不会因为窗口的缩放和滚动条的滚动而变化.那么一开始想到的肯定是&lt;em&gt;position:fixed&lt;/em&gt;,只要设置这个CSS属性就能达到刚刚说的目的,但世界永远不是这么完美的,因为有IE6的存在.IE6不支持这个属性,所以问题就来了.&lt;/p&gt;
&lt;h3&gt;需要解决的问题&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;当页面内容比较少时,分页也要位于底部,不会随着内容的多少而移动.这里设置absolute就能解决问题,但当有滚动条出现时分页确会随着移动,这就是要解决的第二个问题.&lt;/li&gt;
&lt;li&gt;当页面内容比较多时,会出现滚动条,当页面滚动时,分页也必须不会随着一起移动.&lt;/li&gt;
&lt;li&gt;窗口变化时也会影响到上面两个方面&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;JS的解决方案&lt;/h3&gt;
&lt;p&gt;JS是我最不愿使用的解决方案,因为这种纯样式的bug用JS来解决有点大材小用,而且JS需要DOM载入后才执行,有可能会出现闪屏的现象.&lt;/p&gt;
&lt;p&gt;JS的解决方案很简单,通过设置一个top来实现,top是指分页的上边距离document的上边的长度,可以被分解成下面几项(并不是完整的代码)&lt;/p&gt;
&lt;pre&gt;top = scrollTop + clientHeight - height(分页的高度)&lt;/pre&gt;
&lt;p&gt;&lt;img class=&quot;alignnone&quot; title=&quot;scrolltop&quot; src=&quot;http://www.developer.com/img/2007/06/Scroll05.jpg&quot; alt=&quot;&quot; width=&quot;514&quot; height=&quot;513&quot; /&gt;&lt;/p&gt;
&lt;p&gt;scrollTop和clientHeight分别用来解决上面两个问题,滚动条的滚动会影响到scrollTop,而窗口的变化会影响到clientHeight,所以当这两个事件被触发时必须重置top,于是就形成类似下面的代码,但这段脚本的刷新率会非常高,估计有性能问题.&lt;/p&gt;
&lt;pre&gt;window.onresize = window.onscroll = function(){
    //reset top
};&lt;/pre&gt;
&lt;h3&gt;CSS Expression的解决方案&lt;/h3&gt;
&lt;p&gt;上面这段脚本可以直接搬到CSS上来,因为CSS支持expression,可以通过JS代码来实现,不用事件监听,具体就不多说了,但这个也存在性能问题.&lt;/p&gt;
&lt;pre&gt;top:expreesion(scrollTop + clientHeight - height);&lt;/pre&gt;
&lt;h3&gt;纯CSS的解决方案&lt;/h3&gt;
&lt;p&gt;这里提供一种纯CSS的解决方案,其实也挺简单的,这里是&lt;a href=&quot;http://dl.dropbox.com/u/358534/jsdome/bug/ie6-position-fixed.html&quot;&gt;demo&lt;/a&gt;.先贴些代码&lt;/p&gt;
&lt;pre&gt;&amp;lt;body&amp;gt;
  &amp;lt;div id=&quot;container&quot;&amp;gt;&amp;lt;/div&amp;gt;
  &amp;lt;div id=&quot;bottom&quot;&amp;gt;&amp;lt;/div&amp;gt;
&amp;lt;/body&amp;gt;&lt;/pre&gt;
&lt;pre&gt;html, body {
 margin: 0;
 padding: 0;
 height: 100%;
 width: 100%;
 _overflow: hidden;
}

#container {
 _width: 100%;
 _height: 100%;
 _overflow-y: scroll;
}

#bottom {
 background-color: #0ff;
 height: 30px;
 width: 100%;
 position: fixed;
 bottom: 0;
 z-index: 999;

 /* ie6 fixed */
 _position: absolute;
 _bottom:-1px;
 _right: 17px;
}&lt;/pre&gt;
&lt;p&gt;将要固定的bottom和容器container放在并列的位置,将html,body,container都设为100%,那么可以把container当成body来使,将html和body设成overflow:hidden,而让container滚动,这时当文本溢出时只是container内部滚动,而bottom是放在container的外部,不会受其影响.&lt;/p&gt;
&lt;p&gt;问题已经解决了,但是由于bottom是盖在container上面的,所以也会盖住滚动条,设置一个right就能使各浏览器显示相同.&lt;/p&gt;
&lt;p&gt;上面几种方案我之前都有用过,所以我建议大家&lt;span style=&quot;color: #ff0000;&quot;&gt;纯样式问题最好不要动用JS,能用CSS解决的还是用CSS.&lt;/span&gt;&lt;br /&gt;
&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/03/top-left-in-css/&quot; title=&quot;CSS中的top和left&quot;&gt;CSS中的top和left&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/10/input-bug-under-strictmode/&quot; title=&quot;input在strict mode下的bug&quot;&gt;input在strict mode下的bug&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/09/css-browser/&quot; title=&quot;浏览器辨识CSS&quot;&gt;浏览器辨识CSS&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/336884264/popomore/feedsky/s.gif?r=http://chuo.me/2009/12/ie6-position-fixed-bug/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884264/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884264/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=8b12bb552a04f6287d72e480dcce978b&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=8b12bb552a04f6287d72e480dcce978b&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=74125643fef9e529180c96b3aaaecb16&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=74125643fef9e529180c96b3aaaecb16&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=23471411e57f881d6b5d0adac1f50ad9&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=23471411e57f881d6b5d0adac1f50ad9&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=80595d5a2e559cffbbaec192ae038530&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=80595d5a2e559cffbbaec192ae038530&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><category domain="http://chuo.me">UED</category><category domain="http://chuo.me">bug</category><category domain="http://chuo.me">css</category><category domain="http://chuo.me">fixed</category><category domain="http://chuo.me">ie6</category><category domain="http://chuo.me">position</category><pubDate>Fri, 25 Dec 2009 07:10:12 +0800</pubDate><guid isPermaLink="false">http://chuo.me/?p=640</guid><dc:creator>popomore</dc:creator><fs:srclink>http://chuo.me/2009/12/ie6-position-fixed-bug/</fs:srclink><fs:srcfeed>http://chuo.me/feed/atom/</fs:srcfeed><fs:itemid>feedsky/popomore/~7314125/336884264/5194874</fs:itemid></item><item><title>小谈手机支付</title><link atom:type="text/html">http://chuo.me/2009/12/mobile-pay/</link><author xmlns="http://www.w3.org/2005/Atom"><name>popomore</name></author><id xmlns="http://www.w3.org/2005/Atom">http://chuo.me/?p=634</id><content xmlns="http://www.w3.org/2005/Atom" type="html" xml:base="http://chuo.me/2009/12/mobile-pay/">&lt;p&gt;本人刚进入支付行业没多久，最近在做一些手机方面的东西，想谈一下手机支付，小弟拙见请大家见谅。&lt;/p&gt;
&lt;p&gt;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8211;我是谦虚的分割线&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8211;&lt;/p&gt;
&lt;p&gt;首先有一个问题，我们为什么需要用手机进行支付，这东西的好处在哪里？&lt;/p&gt;
&lt;p&gt;人是偷懒的动物，那么越省时省力的方式，他们越喜欢，手机就提供了这种便捷，一种通讯的便捷，一种移动的便捷。对我来说，最好的服务是有多接口的，那我在任何地方任何场景都可以使用，并且这些接口要让人感觉在使用同一样东西，这就有点难了。像我使用gmail，web版的，mail客户端，G2手机客户端，但这几者的体验是不同的，好在mail的核心功能是邮件并不是体验。像我使用dropbox，mac，xp，ubuntu都装了，可以同步资料，最好手机也有一个。多接口化使人愿意使用你的服务，使不同习惯的人都来尝试使用你的服务，而不是见了就跑（我用ubuntu，支付宝一边去）。&lt;/p&gt;
&lt;p&gt;上面虽是调侃，但对于支付行业来说，多接口是非常重要的。当然大家也是这么做的，支付宝有余额支付，网银支付，卡通支付，信用卡支付，邮政网汇e，啦卡拉，还有一些线下的便利商店等。多种渠道可以让生活在不同地区，拥有不同消费习惯的人都来尝试使用我们的服务。手机同样也是一种渠道，也同样只适用于一群人，如果所有渠道都想占满整个市场，那就没必要有这么多渠道了。手机支付一般针对高端的手机用户，如果只用手机来电话短信，更胜者使用早被淘汰的机型，别想让他用没有浏览器的机子给你掏钱。&lt;/p&gt;
&lt;p&gt;那这些高端的手机用户想要何种服务呢？按我这智商估计揣摩不出这高端用户的心理，我只能揣摩下自己的心理。只有一个词，就是方便，怎么方便怎么好。手机既然便携了，当然不能白忙活，最好拿个手机一刷就支付了，比如买张报纸，一刷就可以了。支付宝里有个小卖部，是没人看管的，都是自己看着给钱，但他提供了很方便的付款方式，只要发数字到指定号码就可以支付了，这对我来说已经很方便了。&lt;/p&gt;
&lt;p&gt;但在方便的同时也存在弊端，第一想到的就是安全问题，如果我手机被偷了怎么办呀，我还记住了密码。手机不像电脑，丢了是家常便饭，以后偷手机的第一件干的事就是看看你有没有支付宝账号。我手机绑定了支付宝，打电话支付宝的时候不用输密码就能自动登录，接着就能给人充钱了，这是多么可怕。所以最近在谈论的微支付也是一个解决办法，让用户了却了后顾之忧，如果给手机设个限额就安心多了。占据了这两边的市场就形成了支付的长尾，微支付也不可小觑。&lt;/p&gt;
&lt;p&gt;还有从开发角度来说，现在手机主要是做客户端和wap的，客户端开发成本较高，因为不同机型的开放方式都不同，但是某些机型（如iphone）可以做出很炫的效果。wap方面浏览器的兼容性很差，只能做一些简单的视觉。&lt;/p&gt;
&lt;p&gt;从设计角度来说，我觉得手机应用可以脱离设计web的传统理念，当在做一个web站点的信息架构的时候，我们考虑的是用户会先看什么地方，先点什么地方，把想要呈现给用户的东西放在那个地方。而手机只有那么小一块屏，用户一眼就能看完，所以我们需要尽量的减，把不需要的给删掉。而且手机页面不易做的太长，因为有些不是触摸屏的手机可能滚动的速度很慢，用户会不耐烦，宁可给用户多几个入口供选择。&lt;/p&gt;
&lt;p&gt;今天就说这么多，睡觉！&lt;br /&gt;
&lt;h3&gt;Random Posts&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/08/%e9%ac%bc%e6%b3%a34/&quot; title=&quot;鬼泣4&quot;&gt;鬼泣4&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/12/%e8%b1%86%e7%93%a3%e6%b7%bb%e5%8a%a0%e5%a4%9a%e4%b8%aablog/&quot; title=&quot;豆瓣添加多个blog&quot;&gt;豆瓣添加多个blog&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/06/%e5%af%8c%e6%9c%89/&quot; title=&quot;富有&quot;&gt;富有&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/06/%e6%9c%80%e5%90%8e%e7%9a%84%e6%9c%8b%e5%8f%8b8/&quot; title=&quot;最后的朋友8&quot;&gt;最后的朋友8&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/10/python%e7%9a%84%e5%87%bd%e6%95%b0%e5%8f%82%e6%95%b0/&quot; title=&quot;python的函数参数&quot;&gt;python的函数参数&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content><thr:total>0</thr:total><description>本人刚进入支付行业没多久，最近在做一些手机方面的东西，想谈一下手机支付，小弟拙见请大家见谅。
&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8211;我是谦虚的分割线&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8211;
首先有一个问题，我们为什么需要用手机进行支付，这东西的好处在哪里？
人是偷懒的动物，那么越省时省力的方式，他们越喜欢，手机就提供了这种便捷，一种通讯的便捷，一种移动的便捷。对我来说，最好的服务是有多接口的，那我在任何地方任何场景都可以使用，并且这些接口要让人感觉在使用同一样东西，这就有点难了。像我使用gmail，web版的，mail客户端，G2手机客户端，但这几者的体验是不同的，好在mail的核心功能是邮件并不是体验。像我使用dropbox，mac，xp，ubuntu都装了，可以同步资料，最好手机也有一个。多接口化使人愿意使用你的服务，使不同习惯的人都来尝试使用你的服务，而不是见了就跑（我用ubuntu，支付宝一边去）。
上面虽是调侃，但对于支付行业来说，多接口是非常重要的。当然大家也是这么做的，支付宝有余额支付，网银支付，卡通支付，信用卡支付，邮政网汇e，啦卡拉，还有一些线下的便利商店等。多种渠道可以让生活在不同地区，拥有不同消费习惯的人都来尝试使用我们的服务。手机同样也是一种渠道，也同样只适用于一群人，如果所有渠道都想占满整个市场，那就没必要有这么多渠道了。手机支付一般针对高端的手机用户，如果只用手机来电话短信，更胜者使用早被淘汰的机型，别想让他用没有浏览器的机子给你掏钱。
那这些高端的手机用户想要何种服务呢？按我这智商估计揣摩不出这高端用户的心理，我只能揣摩下自己的心理。只有一个词，就是方便，怎么方便怎么好。手机既然便携了，当然不能白忙活，最好拿个手机一刷就支付了，比如买张报纸，一刷就可以了。支付宝里有个小卖部，是没人看管的，都是自己看着给钱，但他提供了很方便的付款方式，只要发数字到指定号码就可以支付了，这对我来说已经很方便了。
但在方便的同时也存在弊端，第一想到的就是安全问题，如果我手机被偷了怎么办呀，我还记住了密码。手机不像电脑，丢了是家常便饭，以后偷手机的第一件干的事就是看看你有没有支付宝账号。我手机绑定了支付宝，打电话支付宝的时候不用输密码就能自动登录，接着就能给人充钱了，这是多么可怕。所以最近在谈论的微支付也是一个解决办法，让用户了却了后顾之忧，如果给手机设个限额就安心多了。占据了这两边的市场就形成了支付的长尾，微支付也不可小觑。
还有从开发角度来说，现在手机主要是做客户端和wap的，客户端开发成本较高，因为不同机型的开放方式都不同，但是某些机型（如iphone）可以做出很炫的效果。wap方面浏览器的兼容性很差，只能做一些简单的视觉。
从设计角度来说，我觉得手机应用可以脱离设计web的传统理念，当在做一个web站点的信息架构的时候，我们考虑的是用户会先看什么地方，先点什么地方，把想要呈现给用户的东西放在那个地方。而手机只有那么小一块屏，用户一眼就能看完，所以我们需要尽量的减，把不需要的给删掉。而且手机页面不易做的太长，因为有些不是触摸屏的手机可能滚动的速度很慢，用户会不耐烦，宁可给用户多几个入口供选择。
今天就说这么多，睡觉！
Random Posts

twitter，另一种web service
Object和Function
二日支付宝
爱是一种付出
好人与坏人&lt;img src=&quot;http://www1.feedsky.com/t1/336884265/popomore/feedsky/s.gif?r=http://chuo.me/2009/12/mobile-pay/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884265/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884265/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=527f493887209881285c61ad5b610574&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=527f493887209881285c61ad5b610574&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=d9492d046e3109003b79f1ba25f59f55&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=d9492d046e3109003b79f1ba25f59f55&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=533817c9bdcd636e9c7bffd4e9d8aabd&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=533817c9bdcd636e9c7bffd4e9d8aabd&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=86129307d82c0730fe0e3b798ae69b3f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=86129307d82c0730fe0e3b798ae69b3f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><content:encoded>&lt;p&gt;本人刚进入支付行业没多久，最近在做一些手机方面的东西，想谈一下手机支付，小弟拙见请大家见谅。&lt;/p&gt;
&lt;p&gt;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8211;我是谦虚的分割线&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8211;&lt;/p&gt;
&lt;p&gt;首先有一个问题，我们为什么需要用手机进行支付，这东西的好处在哪里？&lt;/p&gt;
&lt;p&gt;人是偷懒的动物，那么越省时省力的方式，他们越喜欢，手机就提供了这种便捷，一种通讯的便捷，一种移动的便捷。对我来说，最好的服务是有多接口的，那我在任何地方任何场景都可以使用，并且这些接口要让人感觉在使用同一样东西，这就有点难了。像我使用gmail，web版的，mail客户端，G2手机客户端，但这几者的体验是不同的，好在mail的核心功能是邮件并不是体验。像我使用dropbox，mac，xp，ubuntu都装了，可以同步资料，最好手机也有一个。多接口化使人愿意使用你的服务，使不同习惯的人都来尝试使用你的服务，而不是见了就跑（我用ubuntu，支付宝一边去）。&lt;/p&gt;
&lt;p&gt;上面虽是调侃，但对于支付行业来说，多接口是非常重要的。当然大家也是这么做的，支付宝有余额支付，网银支付，卡通支付，信用卡支付，邮政网汇e，啦卡拉，还有一些线下的便利商店等。多种渠道可以让生活在不同地区，拥有不同消费习惯的人都来尝试使用我们的服务。手机同样也是一种渠道，也同样只适用于一群人，如果所有渠道都想占满整个市场，那就没必要有这么多渠道了。手机支付一般针对高端的手机用户，如果只用手机来电话短信，更胜者使用早被淘汰的机型，别想让他用没有浏览器的机子给你掏钱。&lt;/p&gt;
&lt;p&gt;那这些高端的手机用户想要何种服务呢？按我这智商估计揣摩不出这高端用户的心理，我只能揣摩下自己的心理。只有一个词，就是方便，怎么方便怎么好。手机既然便携了，当然不能白忙活，最好拿个手机一刷就支付了，比如买张报纸，一刷就可以了。支付宝里有个小卖部，是没人看管的，都是自己看着给钱，但他提供了很方便的付款方式，只要发数字到指定号码就可以支付了，这对我来说已经很方便了。&lt;/p&gt;
&lt;p&gt;但在方便的同时也存在弊端，第一想到的就是安全问题，如果我手机被偷了怎么办呀，我还记住了密码。手机不像电脑，丢了是家常便饭，以后偷手机的第一件干的事就是看看你有没有支付宝账号。我手机绑定了支付宝，打电话支付宝的时候不用输密码就能自动登录，接着就能给人充钱了，这是多么可怕。所以最近在谈论的微支付也是一个解决办法，让用户了却了后顾之忧，如果给手机设个限额就安心多了。占据了这两边的市场就形成了支付的长尾，微支付也不可小觑。&lt;/p&gt;
&lt;p&gt;还有从开发角度来说，现在手机主要是做客户端和wap的，客户端开发成本较高，因为不同机型的开放方式都不同，但是某些机型（如iphone）可以做出很炫的效果。wap方面浏览器的兼容性很差，只能做一些简单的视觉。&lt;/p&gt;
&lt;p&gt;从设计角度来说，我觉得手机应用可以脱离设计web的传统理念，当在做一个web站点的信息架构的时候，我们考虑的是用户会先看什么地方，先点什么地方，把想要呈现给用户的东西放在那个地方。而手机只有那么小一块屏，用户一眼就能看完，所以我们需要尽量的减，把不需要的给删掉。而且手机页面不易做的太长，因为有些不是触摸屏的手机可能滚动的速度很慢，用户会不耐烦，宁可给用户多几个入口供选择。&lt;/p&gt;
&lt;p&gt;今天就说这么多，睡觉！&lt;br /&gt;
&lt;h3&gt;Random Posts&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/08/%e9%ac%bc%e6%b3%a34/&quot; title=&quot;鬼泣4&quot;&gt;鬼泣4&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/12/%e8%b1%86%e7%93%a3%e6%b7%bb%e5%8a%a0%e5%a4%9a%e4%b8%aablog/&quot; title=&quot;豆瓣添加多个blog&quot;&gt;豆瓣添加多个blog&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/06/%e5%af%8c%e6%9c%89/&quot; title=&quot;富有&quot;&gt;富有&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/06/%e6%9c%80%e5%90%8e%e7%9a%84%e6%9c%8b%e5%8f%8b8/&quot; title=&quot;最后的朋友8&quot;&gt;最后的朋友8&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/10/python%e7%9a%84%e5%87%bd%e6%95%b0%e5%8f%82%e6%95%b0/&quot; title=&quot;python的函数参数&quot;&gt;python的函数参数&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/336884265/popomore/feedsky/s.gif?r=http://chuo.me/2009/12/mobile-pay/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884265/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884265/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=527f493887209881285c61ad5b610574&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=527f493887209881285c61ad5b610574&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=d9492d046e3109003b79f1ba25f59f55&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=d9492d046e3109003b79f1ba25f59f55&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=533817c9bdcd636e9c7bffd4e9d8aabd&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=533817c9bdcd636e9c7bffd4e9d8aabd&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=86129307d82c0730fe0e3b798ae69b3f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=86129307d82c0730fe0e3b798ae69b3f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><category domain="http://chuo.me">思考</category><category domain="http://chuo.me">mobile</category><category domain="http://chuo.me">支付</category><pubDate>Fri, 11 Dec 2009 02:48:47 +0800</pubDate><guid isPermaLink="false">http://chuo.me/?p=634</guid><dc:creator>popomore</dc:creator><fs:srclink>http://chuo.me/2009/12/mobile-pay/</fs:srclink><fs:srcfeed>http://chuo.me/feed/atom/</fs:srcfeed><fs:itemid>feedsky/popomore/~7314125/336884265/5194874</fs:itemid></item><item><title>twitter推出新功能lists</title><link atom:type="text/html">http://chuo.me/2009/10/twitter-lists/</link><author xmlns="http://www.w3.org/2005/Atom"><name>popomore</name></author><id xmlns="http://www.w3.org/2005/Atom">http://chuo.me/?p=617</id><content xmlns="http://www.w3.org/2005/Atom" type="html" xml:base="http://chuo.me/2009/10/twitter-lists/">&lt;p&gt;今天用twhirl的时候感觉速度很忙，所以索性上twitter的网站逛逛，果然上天眷顾好心人，顶上告诉我你可以建一个list。&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://chuo.me/wp-content/uploads/2009/10/a.png&quot;&gt;&lt;img class=&quot;alignnone size-full wp-image-618&quot; title=&quot;a&quot; src=&quot;http://chuo.me/wp-content/uploads/2009/10/a.png&quot; alt=&quot;a&quot; width=&quot;570&quot; height=&quot;163&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;粗一看还以为是将我的推分分类，可以把愤青的话和技术的话分分开，免得引起误会，但是我的理解错的，twitter管理的不是推而是人。听某些同学说不是所有的人都有这个功能，看来被我撞到了。&lt;/p&gt;
&lt;h2&gt;新建&lt;/h2&gt;
&lt;p&gt;在twitter侧栏会多出list一项，其中会显示list，这里应该不会显示所有的，因为下面有view all，还有不知道是按什么顺序排列的。从这里新建一个list，现在也可以在刚才发图的地方新建。&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://chuo.me/wp-content/uploads/2009/10/b.png&quot;&gt;&lt;img class=&quot;alignnone size-full wp-image-619&quot; title=&quot;b&quot; src=&quot;http://chuo.me/wp-content/uploads/2009/10/b.png&quot; alt=&quot;b&quot; width=&quot;196&quot; height=&quot;83&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;添加&lt;/h2&gt;
&lt;p&gt;list被创建后就可以添加人了，在用户页面或者搜索结果的页面都会显示一个lists的widget，可以通过这个widget把用户加入到list中，从这种形式来看可以添加到多个list中。list中几乎能加所有的人，除了protected的，这就好比一个精简的public_timeline。&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://chuo.me/wp-content/uploads/2009/10/c.png&quot;&gt;&lt;img class=&quot;alignnone size-full wp-image-620&quot; title=&quot;c&quot; src=&quot;http://chuo.me/wp-content/uploads/2009/10/c.png&quot; alt=&quot;c&quot; width=&quot;247&quot; height=&quot;156&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;查看&lt;/h2&gt;
&lt;p&gt;任何人都可以查看这个公开链接，https://twitter.com/popomore/work，除非被设为私有。在这个页面可以显示所有的被添加的成员，以及所有的订阅者。&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://chuo.me/wp-content/uploads/2009/10/d.png&quot;&gt;&lt;img class=&quot;alignnone size-full wp-image-625&quot; title=&quot;d&quot; src=&quot;http://chuo.me/wp-content/uploads/2009/10/d.png&quot; alt=&quot;d&quot; width=&quot;547&quot; height=&quot;310&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;list创建后，任何人都可以订阅这个list，那么所有被添加到list中成员的推都会出现在这里。不过list不会出现在home中，来看第三方需要忙活一阵了。&lt;/p&gt;
&lt;h2&gt;干什么的？管理人？&lt;/h2&gt;
&lt;p&gt;那这个list是干什么的呢？看起来很像IM的群组 ，分门别类的把好友管理起来。不过别忘了，list中添加的不只是好友，也不只是following的，可以添加任何人。list就像一个精简的public_timeline，以前public_timeline的内容太过于繁杂，没有正对性，现在list就靠人为的来筛选，构成对某一方面用户有用的信息组。不过这种显示方式并不是那么的方便，我需要去每一个list查看，不知道有没有更好的方法。&lt;/p&gt;
&lt;p&gt;list很好玩，让我们来挖掘它的价值吧。&lt;br /&gt;
&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/02/jiwai-and-twitter-under-ubuntu/&quot; title=&quot;ubuntu下使用jiwai和twitter&quot;&gt;ubuntu下使用jiwai和twitter&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/12/%e5%8f%bd%e6%ad%aa%e6%94%b9%e7%89%88/&quot; title=&quot;叽歪改版&quot;&gt;叽歪改版&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/12/twitter-another-webservice/&quot; title=&quot;twitter，另一种web service&quot;&gt;twitter，另一种web service&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/11/%e5%be%ae%e5%8d%9a%e5%ae%a2%e4%b8%8d%e6%98%af%e7%bb%99%e4%bd%a0%e5%8f%91%e6%96%b0%e9%97%bb%e7%9a%84/&quot; title=&quot;微博客不是给你发新闻的&quot;&gt;微博客不是给你发新闻的&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/11/my-social-network/&quot; title=&quot;我的社交圈&quot;&gt;我的社交圈&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content><thr:total>0</thr:total><description>今天用twhirl的时候感觉速度很忙，所以索性上twitter的网站逛逛，果然上天眷顾好心人，顶上告诉我你可以建一个list。

粗一看还以为是将我的推分分类，可以把愤青的话和技术的话分分开，免得引起误会，但是我的理解错的，twitter管理的不是推而是人。听某些同学说不是所有的人都有这个功能，看来被我撞到了。
新建
在twitter侧栏会多出list一项，其中会显示list，这里应该不会显示所有的，因为下面有view all，还有不知道是按什么顺序排列的。从这里新建一个list，现在也可以在刚才发图的地方新建。

添加
list被创建后就可以添加人了，在用户页面或者搜索结果的页面都会显示一个lists的widget，可以通过这个widget把用户加入到list中，从这种形式来看可以添加到多个list中。list中几乎能加所有的人，除了protected的，这就好比一个精简的public_timeline。

查看
任何人都可以查看这个公开链接，https://twitter.com/popomore/work，除非被设为私有。在这个页面可以显示所有的被添加的成员，以及所有的订阅者。

订阅
list创建后，任何人都可以订阅这个list，那么所有被添加到list中成员的推都会出现在这里。不过list不会出现在home中，来看第三方需要忙活一阵了。
干什么的？管理人？
那这个list是干什么的呢？看起来很像IM的群组 ，分门别类的把好友管理起来。不过别忘了，list中添加的不只是好友，也不只是following的，可以添加任何人。list就像一个精简的public_timeline，以前public_timeline的内容太过于繁杂，没有正对性，现在list就靠人为的来筛选，构成对某一方面用户有用的信息组。不过这种显示方式并不是那么的方便，我需要去每一个list查看，不知道有没有更好的方法。
list很好玩，让我们来挖掘它的价值吧。
Related

ubuntu下使用jiwai和twitter
叽歪改版
twitter，另一种web service
微博客不是给你发新闻的
我的社交圈&lt;img src=&quot;http://www1.feedsky.com/t1/336884266/popomore/feedsky/s.gif?r=http://chuo.me/2009/10/twitter-lists/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884266/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884266/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=ff42d5dfdf48b15ec545ef705ee0d5e5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=ff42d5dfdf48b15ec545ef705ee0d5e5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=390b8f4750a92a81f4df6c5380bb5ac9&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=390b8f4750a92a81f4df6c5380bb5ac9&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=c34924a56f045b390cf7c0748c36a015&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=c34924a56f045b390cf7c0748c36a015&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=e500b61c10c63e187593bdf7fd236210&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=e500b61c10c63e187593bdf7fd236210&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><content:encoded>&lt;p&gt;今天用twhirl的时候感觉速度很忙，所以索性上twitter的网站逛逛，果然上天眷顾好心人，顶上告诉我你可以建一个list。&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://chuo.me/wp-content/uploads/2009/10/a.png&quot;&gt;&lt;img class=&quot;alignnone size-full wp-image-618&quot; title=&quot;a&quot; src=&quot;http://chuo.me/wp-content/uploads/2009/10/a.png&quot; alt=&quot;a&quot; width=&quot;570&quot; height=&quot;163&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;粗一看还以为是将我的推分分类，可以把愤青的话和技术的话分分开，免得引起误会，但是我的理解错的，twitter管理的不是推而是人。听某些同学说不是所有的人都有这个功能，看来被我撞到了。&lt;/p&gt;
&lt;h2&gt;新建&lt;/h2&gt;
&lt;p&gt;在twitter侧栏会多出list一项，其中会显示list，这里应该不会显示所有的，因为下面有view all，还有不知道是按什么顺序排列的。从这里新建一个list，现在也可以在刚才发图的地方新建。&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://chuo.me/wp-content/uploads/2009/10/b.png&quot;&gt;&lt;img class=&quot;alignnone size-full wp-image-619&quot; title=&quot;b&quot; src=&quot;http://chuo.me/wp-content/uploads/2009/10/b.png&quot; alt=&quot;b&quot; width=&quot;196&quot; height=&quot;83&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;添加&lt;/h2&gt;
&lt;p&gt;list被创建后就可以添加人了，在用户页面或者搜索结果的页面都会显示一个lists的widget，可以通过这个widget把用户加入到list中，从这种形式来看可以添加到多个list中。list中几乎能加所有的人，除了protected的，这就好比一个精简的public_timeline。&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://chuo.me/wp-content/uploads/2009/10/c.png&quot;&gt;&lt;img class=&quot;alignnone size-full wp-image-620&quot; title=&quot;c&quot; src=&quot;http://chuo.me/wp-content/uploads/2009/10/c.png&quot; alt=&quot;c&quot; width=&quot;247&quot; height=&quot;156&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;查看&lt;/h2&gt;
&lt;p&gt;任何人都可以查看这个公开链接，https://twitter.com/popomore/work，除非被设为私有。在这个页面可以显示所有的被添加的成员，以及所有的订阅者。&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://chuo.me/wp-content/uploads/2009/10/d.png&quot;&gt;&lt;img class=&quot;alignnone size-full wp-image-625&quot; title=&quot;d&quot; src=&quot;http://chuo.me/wp-content/uploads/2009/10/d.png&quot; alt=&quot;d&quot; width=&quot;547&quot; height=&quot;310&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;订阅&lt;/h2&gt;
&lt;p&gt;list创建后，任何人都可以订阅这个list，那么所有被添加到list中成员的推都会出现在这里。不过list不会出现在home中，来看第三方需要忙活一阵了。&lt;/p&gt;
&lt;h2&gt;干什么的？管理人？&lt;/h2&gt;
&lt;p&gt;那这个list是干什么的呢？看起来很像IM的群组 ，分门别类的把好友管理起来。不过别忘了，list中添加的不只是好友，也不只是following的，可以添加任何人。list就像一个精简的public_timeline，以前public_timeline的内容太过于繁杂，没有正对性，现在list就靠人为的来筛选，构成对某一方面用户有用的信息组。不过这种显示方式并不是那么的方便，我需要去每一个list查看，不知道有没有更好的方法。&lt;/p&gt;
&lt;p&gt;list很好玩，让我们来挖掘它的价值吧。&lt;br /&gt;
&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/02/jiwai-and-twitter-under-ubuntu/&quot; title=&quot;ubuntu下使用jiwai和twitter&quot;&gt;ubuntu下使用jiwai和twitter&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/12/%e5%8f%bd%e6%ad%aa%e6%94%b9%e7%89%88/&quot; title=&quot;叽歪改版&quot;&gt;叽歪改版&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/12/twitter-another-webservice/&quot; title=&quot;twitter，另一种web service&quot;&gt;twitter，另一种web service&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/11/%e5%be%ae%e5%8d%9a%e5%ae%a2%e4%b8%8d%e6%98%af%e7%bb%99%e4%bd%a0%e5%8f%91%e6%96%b0%e9%97%bb%e7%9a%84/&quot; title=&quot;微博客不是给你发新闻的&quot;&gt;微博客不是给你发新闻的&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/11/my-social-network/&quot; title=&quot;我的社交圈&quot;&gt;我的社交圈&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/336884266/popomore/feedsky/s.gif?r=http://chuo.me/2009/10/twitter-lists/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884266/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884266/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=ff42d5dfdf48b15ec545ef705ee0d5e5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=ff42d5dfdf48b15ec545ef705ee0d5e5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=390b8f4750a92a81f4df6c5380bb5ac9&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=390b8f4750a92a81f4df6c5380bb5ac9&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=c34924a56f045b390cf7c0748c36a015&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=c34924a56f045b390cf7c0748c36a015&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=e500b61c10c63e187593bdf7fd236210&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=e500b61c10c63e187593bdf7fd236210&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><category domain="http://chuo.me">关注</category><category domain="http://chuo.me">twitter</category><pubDate>Fri, 30 Oct 2009 09:35:38 +0800</pubDate><guid isPermaLink="false">http://chuo.me/?p=617</guid><dc:creator>popomore</dc:creator><fs:srclink>http://chuo.me/2009/10/twitter-lists/</fs:srclink><fs:srcfeed>http://chuo.me/feed/atom/</fs:srcfeed><fs:itemid>feedsky/popomore/~7314125/336884266/5194874</fs:itemid></item><item><title>jquery扩展</title><link atom:type="text/html">http://chuo.me/2009/10/jquery-extend/</link><author xmlns="http://www.w3.org/2005/Atom"><name>popomore</name></author><id xmlns="http://www.w3.org/2005/Atom">http://chuo.me/?p=598</id><content xmlns="http://www.w3.org/2005/Atom" type="html" xml:base="http://chuo.me/2009/10/jquery-extend/">&lt;p&gt;使用jquery已经有一段时间了，其强大的选择器使人感觉简单易用，不过本文并不是要写如果使用选择器，而是关于jquery的扩展性。jquery的扩展性做的很好，因为jquery是重新定义了一个对象，是对Element对象的一个封装，所以所有的扩展都是对jquery对象的扩展。jquery定义了扩展的接口，使爱好者很方便的开发插件，很多插件可以到&lt;a href=&quot;http://plugins.jquery.com/&quot;&gt;官网下到&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;jquery有两个扩展接口，分别是jQuery.fn.extend和jQuery.extend，jquery本身很多方法也是靠这两个接口实现的。jQuery.fn.extend是扩展jquery实例，也就是将element对象封装后所拥有的方法。而jQuery.extend是扩展jquery对象本身，按面向对象来说就是扩展类的静态方法。&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;摘自jquery的代码&lt;/span&gt;&lt;/p&gt;
&lt;pre&gt;&lt;span style=&quot;color: #333333;&quot;&gt;jQuery.fn.extend({    //2894行，扩展所有事件
    bind: function( type, data, fn ) {
        return type == &quot;unload&quot; ? this.one(type, data, fn) : this.each(function(){
            jQuery.event.add( this, type, fn || data, fn &amp;amp;&amp;amp; data );
        });
    },

    one: function( type, data, fn ) {
        var one = jQuery.event.proxy( fn || data, function(event) {
            jQuery(this).unbind(event, one);
            return (fn || data).apply( this, arguments );
        });
        return this.each(function(){
            jQuery.event.add( this, type, one, fn &amp;amp;&amp;amp; data);
        });
    },
    ......
&lt;/span&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;span style=&quot;color: #333333;&quot;&gt;});

jQuery.extend({   //3018行，扩展load事件
	isReady: false,
	readyList: [],
	// Handle when the DOM is ready
	ready: function() {
		// Make sure that the DOM is not already loaded
		if ( !jQuery.isReady ) {
			// Remember that the DOM is ready
			jQuery.isReady = true;

			// If there are functions bound, to execute
			if ( jQuery.readyList ) {
				// Execute all of them
				jQuery.each( jQuery.readyList, function(){
					this.call( document, jQuery );
				});

				// Reset the list of functions
				jQuery.readyList = null;
			}

			// Trigger any bound ready events
			jQuery(document).triggerHandler(&quot;ready&quot;);
		}
	}
});&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;在此基础上我也写了一个&lt;a href=&quot;http://dl.getdropbox.com/u/358534/jsdemo/lib/suggestText.js&quot;&gt;小扩展&lt;/a&gt;作为练习，这个扩展的功能是在文本表单的框内显示提示信息，当输入文本时提示信息为空，当内容为空时显示提示信息。&lt;/p&gt;
&lt;p&gt;这个扩展同样由两种方式实现，如$(&amp;#8217;.info&amp;#8217;).suggestText()只有class为info的才有这个功能，如$.suggestText()使所有的文本表单都具有这个功能。&lt;/p&gt;
&lt;input id=&quot;suggest&quot; type=&quot;text&quot; value=&quot;请输入&quot; /&gt; &lt;script src=&quot;http://dl.getdropbox.com/u/358534/jsdome/lib/js/jquery.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt; &lt;script src=&quot;http://dl.getdropbox.com/u/358534/jsdome/src/widget/suggestText.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;br /&gt;
&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
$('#suggest').suggestText();
// --&gt;&lt;/script&gt;&lt;br /&gt;
以上为一个实例，此扩展还可以输入参数，比如点击后的样式变化，这点还没来得及做。&lt;br /&gt;
&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/05/think-jquery/&quot; title=&quot;JQuery之我见&quot;&gt;JQuery之我见&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/05/optimize-form-using-jquery/&quot; title=&quot;使用JQuery优化表单&quot;&gt;使用JQuery优化表单&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/10/input-bug-under-strictmode/&quot; title=&quot;input在strict mode下的bug&quot;&gt;input在strict mode下的bug&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/10/js-oo-instantiation/&quot; title=&quot;Javascript模仿面向对象—实例化&quot;&gt;Javascript模仿面向对象—实例化&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/03/for-in-iteration/&quot; title=&quot;for in循环&quot;&gt;for in循环&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content><thr:total>0</thr:total><description>使用jquery已经有一段时间了，其强大的选择器使人感觉简单易用，不过本文并不是要写如果使用选择器，而是关于jquery的扩展性。jquery的扩展性做的很好，因为jquery是重新定义了一个对象，是对Element对象的一个封装，所以所有的扩展都是对jquery对象的扩展。jquery定义了扩展的接口，使爱好者很方便的开发插件，很多插件可以到官网下到。
jquery有两个扩展接口，分别是jQuery.fn.extend和jQuery.extend，jquery本身很多方法也是靠这两个接口实现的。jQuery.fn.extend是扩展jquery实例，也就是将element对象封装后所拥有的方法。而jQuery.extend是扩展jquery对象本身，按面向对象来说就是扩展类的静态方法。
摘自jquery的代码
jQuery.fn.extend({    //2894行，扩展所有事件
    bind: function( type, data, fn ) {
        return type == &quot;unload&quot; ? this.one(type, data, fn) : this.each(function(){
            jQuery.event.add( this, type, fn &amp;#124;&amp;#124; data, fn &amp;#38;&amp;#38; data );
        });
    },

    one: function( type, data, fn ) {
        var one = jQuery.event.proxy( fn &amp;#124;&amp;#124; data, function(event) {
            [...]&lt;img src=&quot;http://www1.feedsky.com/t1/336884269/popomore/feedsky/s.gif?r=http://chuo.me/2009/10/jquery-extend/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884269/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884269/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=87e644f833d2e1453e5c85d77ee7c591&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=87e644f833d2e1453e5c85d77ee7c591&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=8816105367cc3b8005c839cce5d0fce5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=8816105367cc3b8005c839cce5d0fce5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=3edf49c867cf972cf3680a676f01557a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=3edf49c867cf972cf3680a676f01557a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=6b99594e473eae8b1e89795092ef8f2b&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=6b99594e473eae8b1e89795092ef8f2b&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><content:encoded>&lt;p&gt;使用jquery已经有一段时间了，其强大的选择器使人感觉简单易用，不过本文并不是要写如果使用选择器，而是关于jquery的扩展性。jquery的扩展性做的很好，因为jquery是重新定义了一个对象，是对Element对象的一个封装，所以所有的扩展都是对jquery对象的扩展。jquery定义了扩展的接口，使爱好者很方便的开发插件，很多插件可以到&lt;a href=&quot;http://plugins.jquery.com/&quot;&gt;官网下到&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;jquery有两个扩展接口，分别是jQuery.fn.extend和jQuery.extend，jquery本身很多方法也是靠这两个接口实现的。jQuery.fn.extend是扩展jquery实例，也就是将element对象封装后所拥有的方法。而jQuery.extend是扩展jquery对象本身，按面向对象来说就是扩展类的静态方法。&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;摘自jquery的代码&lt;/span&gt;&lt;/p&gt;
&lt;pre&gt;&lt;span style=&quot;color: #333333;&quot;&gt;jQuery.fn.extend({    //2894行，扩展所有事件
    bind: function( type, data, fn ) {
        return type == &quot;unload&quot; ? this.one(type, data, fn) : this.each(function(){
            jQuery.event.add( this, type, fn || data, fn &amp;amp;&amp;amp; data );
        });
    },

    one: function( type, data, fn ) {
        var one = jQuery.event.proxy( fn || data, function(event) {
            jQuery(this).unbind(event, one);
            return (fn || data).apply( this, arguments );
        });
        return this.each(function(){
            jQuery.event.add( this, type, one, fn &amp;amp;&amp;amp; data);
        });
    },
    ......
&lt;/span&gt;&lt;/pre&gt;
&lt;pre&gt;&lt;span style=&quot;color: #333333;&quot;&gt;});

jQuery.extend({   //3018行，扩展load事件
	isReady: false,
	readyList: [],
	// Handle when the DOM is ready
	ready: function() {
		// Make sure that the DOM is not already loaded
		if ( !jQuery.isReady ) {
			// Remember that the DOM is ready
			jQuery.isReady = true;

			// If there are functions bound, to execute
			if ( jQuery.readyList ) {
				// Execute all of them
				jQuery.each( jQuery.readyList, function(){
					this.call( document, jQuery );
				});

				// Reset the list of functions
				jQuery.readyList = null;
			}

			// Trigger any bound ready events
			jQuery(document).triggerHandler(&quot;ready&quot;);
		}
	}
});&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;在此基础上我也写了一个&lt;a href=&quot;http://dl.getdropbox.com/u/358534/jsdemo/lib/suggestText.js&quot;&gt;小扩展&lt;/a&gt;作为练习，这个扩展的功能是在文本表单的框内显示提示信息，当输入文本时提示信息为空，当内容为空时显示提示信息。&lt;/p&gt;
&lt;p&gt;这个扩展同样由两种方式实现，如$(&amp;#8217;.info&amp;#8217;).suggestText()只有class为info的才有这个功能，如$.suggestText()使所有的文本表单都具有这个功能。&lt;/p&gt;
&lt;input id=&quot;suggest&quot; type=&quot;text&quot; value=&quot;请输入&quot; /&gt; &lt;script src=&quot;http://dl.getdropbox.com/u/358534/jsdome/lib/js/jquery.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt; &lt;script src=&quot;http://dl.getdropbox.com/u/358534/jsdome/src/widget/suggestText.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;br /&gt;
&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
$('#suggest').suggestText();
// --&gt;&lt;/script&gt;&lt;br /&gt;
以上为一个实例，此扩展还可以输入参数，比如点击后的样式变化，这点还没来得及做。&lt;br /&gt;
&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/05/think-jquery/&quot; title=&quot;JQuery之我见&quot;&gt;JQuery之我见&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/05/optimize-form-using-jquery/&quot; title=&quot;使用JQuery优化表单&quot;&gt;使用JQuery优化表单&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/10/input-bug-under-strictmode/&quot; title=&quot;input在strict mode下的bug&quot;&gt;input在strict mode下的bug&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/10/js-oo-instantiation/&quot; title=&quot;Javascript模仿面向对象—实例化&quot;&gt;Javascript模仿面向对象—实例化&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/03/for-in-iteration/&quot; title=&quot;for in循环&quot;&gt;for in循环&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/336884269/popomore/feedsky/s.gif?r=http://chuo.me/2009/10/jquery-extend/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884269/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884269/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=87e644f833d2e1453e5c85d77ee7c591&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=87e644f833d2e1453e5c85d77ee7c591&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=8816105367cc3b8005c839cce5d0fce5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=8816105367cc3b8005c839cce5d0fce5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=3edf49c867cf972cf3680a676f01557a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=3edf49c867cf972cf3680a676f01557a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=6b99594e473eae8b1e89795092ef8f2b&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=6b99594e473eae8b1e89795092ef8f2b&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><category domain="http://chuo.me">未分类</category><category domain="http://chuo.me">javascript</category><category domain="http://chuo.me">jquery</category><pubDate>Thu, 29 Oct 2009 23:29:02 +0800</pubDate><guid isPermaLink="false">http://chuo.me/?p=598</guid><dc:creator>popomore</dc:creator><fs:srclink>http://chuo.me/2009/10/jquery-extend/</fs:srclink><fs:srcfeed>http://chuo.me/feed/atom/</fs:srcfeed><fs:itemid>feedsky/popomore/~7314125/336884269/5194874</fs:itemid></item><item><title>input在strict mode下的bug</title><link atom:type="text/html">http://chuo.me/2009/10/input-bug-under-strictmode/</link><author xmlns="http://www.w3.org/2005/Atom"><name>popomore</name></author><id xmlns="http://www.w3.org/2005/Atom">http://chuo.me/?p=612</id><content xmlns="http://www.w3.org/2005/Atom" type="html" xml:base="http://chuo.me/2009/10/input-bug-under-strictmode/">&lt;p&gt;今天师傅说起了button盒模型的bug，不管是在ie还是firefox下button的盒模型始终是传统模型，也就是width=content+padding+border，这个bug&lt;a href=&quot;http://www.quirksmode.org/css/tests/mozie_button.html&quot;&gt;在ff下可以修复但ie下还是无法修复&lt;/a&gt;。但本文说的bug不是这个，在尝试寻找这个bug的过程中发现了另一个问题。&lt;/p&gt;
&lt;h3&gt;Firefox的bug&lt;/h3&gt;
&lt;p&gt;用div包着一个input的时候，input离容器的上边框总是会有一段距离，注意这里是firefox（IE存在其他问题，下文会介绍）。查看了下input的margin，border，padding都为0，那这是什么造成的呢。下图中蓝色边框为容器，绿色为容器的背景，红色为input的背景。&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://chuo.me/wp-content/uploads/2009/10/1.png&quot;&gt;&lt;img class=&quot;alignnone size-medium wp-image-615&quot; title=&quot;1&quot; src=&quot;http://chuo.me/wp-content/uploads/2009/10/1-300x34.png&quot; alt=&quot;1&quot; width=&quot;300&quot; height=&quot;34&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;后来无意中发现使用的Doctype是&lt;/p&gt;
&lt;div class=&quot;codecolorer-container text twitlight&quot; style=&quot;overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;&quot;&gt;&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;&quot;&gt;&lt;div&gt;1&lt;br /&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class=&quot;text codecolorer&quot; style=&quot;padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap&quot;&gt;&amp;amp;lt;!DOCTYPE HTML PUBLIC &amp;quot;-//W3C//DTD HTML 4.01//EN&amp;quot; &amp;quot;http://www.w3.org/TR/html4/strict.dtd&amp;quot;&amp;amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;
&lt;p&gt;更换成&lt;/p&gt;
&lt;div class=&quot;codecolorer-container text twitlight&quot; style=&quot;overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;&quot;&gt;&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;&quot;&gt;&lt;div&gt;1&lt;br /&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class=&quot;text codecolorer&quot; style=&quot;padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap&quot;&gt;&amp;amp;lt;!DOCTYPE html PUBLIC &amp;quot;-//W3C//DTD XHTML 1.0 Transitional//EN&amp;quot; &amp;quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&amp;quot;&amp;amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;
&lt;p&gt;就没问题了。&lt;/p&gt;
&lt;p&gt;第一个Doctype是strict的html4，促发的是Strict Mode，而第二个是transitional的xhtml1.0，促发的是Almost Strict Mode，那么这个问题就找到了。Firefox下Strict Mode会造成这个bug，而Almost Strict Mode则不会。但具体为什么会有这个bug，暂时还没有结果，如果遇到问题换个Doctype就能解决了。&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://dl.getdropbox.com/u/358534/jsdome/bug/input-strictmode.html&quot;&gt;我是测试页面&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;IE的bug&lt;/h3&gt;
&lt;p&gt;IE遇到的问题又有所不同，不管是Strict Mode还是Almost Strict Mode下，IE会离上下边框1像素的距离，同样可以点击上面的链接进行测试。&lt;br /&gt;
&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/12/ie6-position-fixed-bug/&quot; title=&quot;纯CSS解决ie6下position:fixed问题&quot;&gt;纯CSS解决ie6下position:fixed问题&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/10/js-oo-instantiation/&quot; title=&quot;Javascript模仿面向对象—实例化&quot;&gt;Javascript模仿面向对象—实例化&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/10/jquery-extend/&quot; title=&quot;jquery扩展&quot;&gt;jquery扩展&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/05/think-jquery/&quot; title=&quot;JQuery之我见&quot;&gt;JQuery之我见&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/05/optimize-form-using-jquery/&quot; title=&quot;使用JQuery优化表单&quot;&gt;使用JQuery优化表单&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content><thr:total>1</thr:total><description>今天师傅说起了button盒模型的bug，不管是在ie还是firefox下button的盒模型始终是传统模型，也就是width=content+padding+border，这个bug在ff下可以修复但ie下还是无法修复。但本文说的bug不是这个，在尝试寻找这个bug的过程中发现了另一个问题。
Firefox的bug
用div包着一个input的时候，input离容器的上边框总是会有一段距离，注意这里是firefox（IE存在其他问题，下文会介绍）。查看了下input的margin，border，padding都为0，那这是什么造成的呢。下图中蓝色边框为容器，绿色为容器的背景，红色为input的背景。

后来无意中发现使用的Doctype是
1&amp;#38;lt;!DOCTYPE HTML PUBLIC &amp;#34;-//W3C//DTD HTML 4.01//EN&amp;#34; &amp;#34;http://www.w3.org/TR/html4/strict.dtd&amp;#34;&amp;#38;gt;
更换成
1&amp;#38;lt;!DOCTYPE html PUBLIC &amp;#34;-//W3C//DTD XHTML 1.0 Transitional//EN&amp;#34; &amp;#34;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&amp;#34;&amp;#38;gt;
就没问题了。
第一个Doctype是strict的html4，促发的是Strict Mode，而第二个是transitional的xhtml1.0，促发的是Almost Strict Mode，那么这个问题就找到了。Firefox下Strict Mode会造成这个bug，而Almost Strict Mode则不会。但具体为什么会有这个bug，暂时还没有结果，如果遇到问题换个Doctype就能解决了。
我是测试页面
IE的bug
IE遇到的问题又有所不同，不管是Strict Mode还是Almost Strict Mode下，IE会离上下边框1像素的距离，同样可以点击上面的链接进行测试。
Related

纯CSS解决ie6下position:fixed问题
Javascript模仿面向对象—实例化
jquery扩展
JQuery之我见
使用JQuery优化表单&lt;img src=&quot;http://www1.feedsky.com/t1/336884267/popomore/feedsky/s.gif?r=http://chuo.me/2009/10/input-bug-under-strictmode/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884267/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884267/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=c4e5968ec384cedab3ec4d4d918ac5e7&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=c4e5968ec384cedab3ec4d4d918ac5e7&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=a0ab145c933321e74aa625cccd3064fd&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=a0ab145c933321e74aa625cccd3064fd&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=c10f84194ef68f3df40ec8d4932287d5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=c10f84194ef68f3df40ec8d4932287d5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=364e665d791bf6952be5e10aeea8280a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=364e665d791bf6952be5e10aeea8280a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><content:encoded>&lt;p&gt;今天师傅说起了button盒模型的bug，不管是在ie还是firefox下button的盒模型始终是传统模型，也就是width=content+padding+border，这个bug&lt;a href=&quot;http://www.quirksmode.org/css/tests/mozie_button.html&quot;&gt;在ff下可以修复但ie下还是无法修复&lt;/a&gt;。但本文说的bug不是这个，在尝试寻找这个bug的过程中发现了另一个问题。&lt;/p&gt;
&lt;h3&gt;Firefox的bug&lt;/h3&gt;
&lt;p&gt;用div包着一个input的时候，input离容器的上边框总是会有一段距离，注意这里是firefox（IE存在其他问题，下文会介绍）。查看了下input的margin，border，padding都为0，那这是什么造成的呢。下图中蓝色边框为容器，绿色为容器的背景，红色为input的背景。&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://chuo.me/wp-content/uploads/2009/10/1.png&quot;&gt;&lt;img class=&quot;alignnone size-medium wp-image-615&quot; title=&quot;1&quot; src=&quot;http://chuo.me/wp-content/uploads/2009/10/1-300x34.png&quot; alt=&quot;1&quot; width=&quot;300&quot; height=&quot;34&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;后来无意中发现使用的Doctype是&lt;/p&gt;
&lt;div class=&quot;codecolorer-container text twitlight&quot; style=&quot;overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;&quot;&gt;&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;&quot;&gt;&lt;div&gt;1&lt;br /&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class=&quot;text codecolorer&quot; style=&quot;padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap&quot;&gt;&amp;amp;lt;!DOCTYPE HTML PUBLIC &amp;quot;-//W3C//DTD HTML 4.01//EN&amp;quot; &amp;quot;http://www.w3.org/TR/html4/strict.dtd&amp;quot;&amp;amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;
&lt;p&gt;更换成&lt;/p&gt;
&lt;div class=&quot;codecolorer-container text twitlight&quot; style=&quot;overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;&quot;&gt;&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;&quot;&gt;&lt;div&gt;1&lt;br /&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class=&quot;text codecolorer&quot; style=&quot;padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap&quot;&gt;&amp;amp;lt;!DOCTYPE html PUBLIC &amp;quot;-//W3C//DTD XHTML 1.0 Transitional//EN&amp;quot; &amp;quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&amp;quot;&amp;amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;
&lt;p&gt;就没问题了。&lt;/p&gt;
&lt;p&gt;第一个Doctype是strict的html4，促发的是Strict Mode，而第二个是transitional的xhtml1.0，促发的是Almost Strict Mode，那么这个问题就找到了。Firefox下Strict Mode会造成这个bug，而Almost Strict Mode则不会。但具体为什么会有这个bug，暂时还没有结果，如果遇到问题换个Doctype就能解决了。&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://dl.getdropbox.com/u/358534/jsdome/bug/input-strictmode.html&quot;&gt;我是测试页面&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;IE的bug&lt;/h3&gt;
&lt;p&gt;IE遇到的问题又有所不同，不管是Strict Mode还是Almost Strict Mode下，IE会离上下边框1像素的距离，同样可以点击上面的链接进行测试。&lt;br /&gt;
&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/12/ie6-position-fixed-bug/&quot; title=&quot;纯CSS解决ie6下position:fixed问题&quot;&gt;纯CSS解决ie6下position:fixed问题&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/10/js-oo-instantiation/&quot; title=&quot;Javascript模仿面向对象—实例化&quot;&gt;Javascript模仿面向对象—实例化&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/10/jquery-extend/&quot; title=&quot;jquery扩展&quot;&gt;jquery扩展&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/05/think-jquery/&quot; title=&quot;JQuery之我见&quot;&gt;JQuery之我见&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/05/optimize-form-using-jquery/&quot; title=&quot;使用JQuery优化表单&quot;&gt;使用JQuery优化表单&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/336884267/popomore/feedsky/s.gif?r=http://chuo.me/2009/10/input-bug-under-strictmode/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884267/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884267/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=c4e5968ec384cedab3ec4d4d918ac5e7&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=c4e5968ec384cedab3ec4d4d918ac5e7&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=a0ab145c933321e74aa625cccd3064fd&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=a0ab145c933321e74aa625cccd3064fd&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=c10f84194ef68f3df40ec8d4932287d5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=c10f84194ef68f3df40ec8d4932287d5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=364e665d791bf6952be5e10aeea8280a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=364e665d791bf6952be5e10aeea8280a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><category domain="http://chuo.me">UED</category><category domain="http://chuo.me">bug</category><category domain="http://chuo.me">firefox</category><category domain="http://chuo.me">javascript</category><category domain="http://chuo.me">strictmode</category><pubDate>Mon, 26 Oct 2009 22:49:26 +0800</pubDate><guid isPermaLink="false">http://chuo.me/?p=612</guid><dc:creator>popomore</dc:creator><fs:srclink>http://chuo.me/2009/10/input-bug-under-strictmode/</fs:srclink><fs:srcfeed>http://chuo.me/feed/atom/</fs:srcfeed><fs:itemid>feedsky/popomore/~7314125/336884267/5194874</fs:itemid></item><item><title>Javascript模仿面向对象—实例化</title><link atom:type="text/html">http://chuo.me/2009/10/js-oo-instantiation/</link><author xmlns="http://www.w3.org/2005/Atom"><name>popomore</name></author><id xmlns="http://www.w3.org/2005/Atom">http://chuo.me/?p=604</id><content xmlns="http://www.w3.org/2005/Atom" type="html" xml:base="http://chuo.me/2009/10/js-oo-instantiation/">&lt;p&gt;刚碰javascript的时候觉得是一门很简单的语言，就算没学过也能很快上手，这也是开发者的意图吧。虽然这门语言很易用，但其内部结构是非常松散灵活的，无法用面向对象的方法来解释。但如何让习惯于使用java这样的面向对象语言的人来使用javascript呢，这个问题很好解决，因为js是无所不能的。&lt;/p&gt;
&lt;p&gt;在java中我们可以用Class关键字来定义类，然后用new来构造一个实例，但js中并没有class关键字，那js是如何构造实例的呢。还记得function么，他可以定义函数，同时他也可以当作构造函数来用，通过new关键字来实例化出一个对象。&lt;/p&gt;
&lt;pre lang=&quot;javascript&quot;&gt;function Person(leg){
  this.leg = leg;
  this.run = function(){
      //run by leg
  };
}&lt;/pre&gt;
&lt;p&gt;定义好构造函数后，就可以进行实例化了，实例化的过程与面向对象的思路是一样的，生成实例后就可以调用这个实例的属性和方法，我们可以将其与java做一个对照&lt;/p&gt;
&lt;pre lang=&quot;java5&quot;&gt;class Person {
  public String leg = null;

  public void Person(leg) {
    this.leg = leg;
  }

  public void run(){
    //run by leg
  }
}&lt;/pre&gt;
&lt;p&gt;这下看明白了吧，用使用面向对象的方式来写js也是非常简单的。但有人会问，如果我想定义私有属性和方法怎么办，比如这个有自己的隐私不想被人看到，小便的时候不想被人看到。这时，对于js来说相当麻烦，因为js没有private这个关键字，使得实现方法相当复杂，如果不太熟悉函数式编程的同学应该不会接触这些概念。这里面会用到闭包的概念，可以去&lt;a href=&quot;http://www.google.cn/search?hl=zh-CN&amp;amp;client=firefox-a&amp;amp;rls=org.mozilla%3Azh-CN%3Aofficial&amp;amp;hs=ltZ&amp;amp;newwindow=1&amp;amp;q=%E9%97%AD%E5%8C%85+js&amp;amp;btnG=Google+%E6%90%9C%E7%B4%A2&quot;&gt;google上搜一下&lt;/a&gt;。js对象中不管是属性还是方法是以key/value形式存在的，所以只要定义了一个值那么就能调用它。那怎么样把属性和方法隐藏起来不被调用呢，那么先来看一段js代码。&lt;/p&gt;
&lt;pre lang=&quot;javascript&quot;&gt;var Person = (function(){
  var secret = 'himitsu';
  var pee = function(){
    //use xxx
  };

  return function(leg) {
    this.leg = leg;
    this.run = function(){
        //run by leg
    };
    this.talk = function(){
      alert(secret);
    };
  };
})();&lt;/pre&gt;
&lt;p&gt;初看这段代码比较奇怪，函数怎么都没有函数名的，而且为什么还要返回一个函数。其实这段代码就是用到了闭包，Person最后指向的是return后的函数，也就是说Person最后得到的与之前的构造函数是一样的，只是中间过渡了一步。那为什么要有这个过渡呢？&lt;strong&gt;(function(){&amp;#8230;})()&lt;/strong&gt;这种写法也是很特殊的，是直接运行一个匿名函数，它的目的就是要定义一些私有的属性和方法，看到secret属性和pee方法是定义在外面那个函数的，而返回的函数再引用这些属性和方法。当这个运行完这个函数后，函数本身已经烟消云散了，只不过这些私有属性和方法被引用，一直存在缓存中。实例化后，这些私有属性和方法并没有真实的存在对象中，外部是引用不到的，只有内部的函数才能调用得到。对照一下java代码&lt;/p&gt;
&lt;pre lang=&quot;java5&quot;&gt;class Person  {
  ...

  private String secret = &quot;himitsu&quot;;
  private void pee (){
    //use xxx
  }
}&lt;/pre&gt;
&lt;p&gt;这是还有人会问，怎么没有静态方法，其实这个对于js来说很简单，因为所有的对象都能动态添加属性和方法，所以添加静态属性和方法就很简单了&lt;/p&gt;
&lt;pre lang=&quot;javascript&quot;&gt;Person.bone = '206';&lt;/pre&gt;
&lt;p&gt;这样就定义了一个静态属性，那么如果想把这个静态属性定义在构造函数中要怎么做呢？那也好办，只需修改一下返回的函数就可以了。&lt;/p&gt;
&lt;pre lang=&quot;javascript&quot;&gt;var Person = (function(){
  var secret = 'himitsu';      //private attribute
  var pee = function(){        //private method
    //use xxx
  };

  var value = function(leg) {
    this.leg = leg;            //public attibute
    this.run = function(){     //public method
        //run by leg
    };
    this.talk = function(){    //ref secret
      alert(secret);
    };
  };

  value.bone = '206';          //static attribute

  return value;
})();&lt;/pre&gt;
&lt;p&gt;现在我可以来模拟各种面向对象的关键字了，final还没想到一个好的实现方法，虽然在这里解释半天的面向对象实现方式，但我不太推荐使用面向对象。js有非常好的原型系统，如果运用熟练绝对能达到期望。&lt;br /&gt;
&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/10/input-bug-under-strictmode/&quot; title=&quot;input在strict mode下的bug&quot;&gt;input在strict mode下的bug&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/10/jquery-extend/&quot; title=&quot;jquery扩展&quot;&gt;jquery扩展&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/05/think-jquery/&quot; title=&quot;JQuery之我见&quot;&gt;JQuery之我见&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/05/optimize-form-using-jquery/&quot; title=&quot;使用JQuery优化表单&quot;&gt;使用JQuery优化表单&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/03/for-in-iteration/&quot; title=&quot;for in循环&quot;&gt;for in循环&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content><thr:total>0</thr:total><description>刚碰javascript的时候觉得是一门很简单的语言，就算没学过也能很快上手，这也是开发者的意图吧。虽然这门语言很易用，但其内部结构是非常松散灵活的，无法用面向对象的方法来解释。但如何让习惯于使用java这样的面向对象语言的人来使用javascript呢，这个问题很好解决，因为js是无所不能的。
在java中我们可以用Class关键字来定义类，然后用new来构造一个实例，但js中并没有class关键字，那js是如何构造实例的呢。还记得function么，他可以定义函数，同时他也可以当作构造函数来用，通过new关键字来实例化出一个对象。
function Person(leg){
  this.leg = leg;
  this.run = function(){
      //run by leg
  };
}
定义好构造函数后，就可以进行实例化了，实例化的过程与面向对象的思路是一样的，生成实例后就可以调用这个实例的属性和方法，我们可以将其与java做一个对照
class Person {
  public String leg = null;

  public void Person(leg) {
    this.leg = leg;
  }

  public void run(){
    //run by leg
  }
}
这下看明白了吧，用使用面向对象的方式来写js也是非常简单的。但有人会问，如果我想定义私有属性和方法怎么办，比如这个有自己的隐私不想被人看到，小便的时候不想被人看到。这时，对于js来说相当麻烦，因为js没有private这个关键字，使得实现方法相当复杂，如果不太熟悉函数式编程的同学应该不会接触这些概念。这里面会用到闭包的概念，可以去google上搜一下。js对象中不管是属性还是方法是以key/value形式存在的，所以只要定义了一个值那么就能调用它。那怎么样把属性和方法隐藏起来不被调用呢，那么先来看一段js代码。
var Person = (function(){
 [...]&lt;img src=&quot;http://www1.feedsky.com/t1/336884268/popomore/feedsky/s.gif?r=http://chuo.me/2009/10/js-oo-instantiation/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884268/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884268/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=b76ca3eee6436de34f543e1ba2097dfb&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=b76ca3eee6436de34f543e1ba2097dfb&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=cbc00eeb631d0d0c0940a5c9e5587367&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=cbc00eeb631d0d0c0940a5c9e5587367&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=6a1c25a869f1556dcdf2b4d54691bf85&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=6a1c25a869f1556dcdf2b4d54691bf85&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=fe60bc0229692af031459976c960ccc0&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=fe60bc0229692af031459976c960ccc0&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><content:encoded>&lt;p&gt;刚碰javascript的时候觉得是一门很简单的语言，就算没学过也能很快上手，这也是开发者的意图吧。虽然这门语言很易用，但其内部结构是非常松散灵活的，无法用面向对象的方法来解释。但如何让习惯于使用java这样的面向对象语言的人来使用javascript呢，这个问题很好解决，因为js是无所不能的。&lt;/p&gt;
&lt;p&gt;在java中我们可以用Class关键字来定义类，然后用new来构造一个实例，但js中并没有class关键字，那js是如何构造实例的呢。还记得function么，他可以定义函数，同时他也可以当作构造函数来用，通过new关键字来实例化出一个对象。&lt;/p&gt;
&lt;pre lang=&quot;javascript&quot;&gt;function Person(leg){
  this.leg = leg;
  this.run = function(){
      //run by leg
  };
}&lt;/pre&gt;
&lt;p&gt;定义好构造函数后，就可以进行实例化了，实例化的过程与面向对象的思路是一样的，生成实例后就可以调用这个实例的属性和方法，我们可以将其与java做一个对照&lt;/p&gt;
&lt;pre lang=&quot;java5&quot;&gt;class Person {
  public String leg = null;

  public void Person(leg) {
    this.leg = leg;
  }

  public void run(){
    //run by leg
  }
}&lt;/pre&gt;
&lt;p&gt;这下看明白了吧，用使用面向对象的方式来写js也是非常简单的。但有人会问，如果我想定义私有属性和方法怎么办，比如这个有自己的隐私不想被人看到，小便的时候不想被人看到。这时，对于js来说相当麻烦，因为js没有private这个关键字，使得实现方法相当复杂，如果不太熟悉函数式编程的同学应该不会接触这些概念。这里面会用到闭包的概念，可以去&lt;a href=&quot;http://www.google.cn/search?hl=zh-CN&amp;amp;client=firefox-a&amp;amp;rls=org.mozilla%3Azh-CN%3Aofficial&amp;amp;hs=ltZ&amp;amp;newwindow=1&amp;amp;q=%E9%97%AD%E5%8C%85+js&amp;amp;btnG=Google+%E6%90%9C%E7%B4%A2&quot;&gt;google上搜一下&lt;/a&gt;。js对象中不管是属性还是方法是以key/value形式存在的，所以只要定义了一个值那么就能调用它。那怎么样把属性和方法隐藏起来不被调用呢，那么先来看一段js代码。&lt;/p&gt;
&lt;pre lang=&quot;javascript&quot;&gt;var Person = (function(){
  var secret = 'himitsu';
  var pee = function(){
    //use xxx
  };

  return function(leg) {
    this.leg = leg;
    this.run = function(){
        //run by leg
    };
    this.talk = function(){
      alert(secret);
    };
  };
})();&lt;/pre&gt;
&lt;p&gt;初看这段代码比较奇怪，函数怎么都没有函数名的，而且为什么还要返回一个函数。其实这段代码就是用到了闭包，Person最后指向的是return后的函数，也就是说Person最后得到的与之前的构造函数是一样的，只是中间过渡了一步。那为什么要有这个过渡呢？&lt;strong&gt;(function(){&amp;#8230;})()&lt;/strong&gt;这种写法也是很特殊的，是直接运行一个匿名函数，它的目的就是要定义一些私有的属性和方法，看到secret属性和pee方法是定义在外面那个函数的，而返回的函数再引用这些属性和方法。当这个运行完这个函数后，函数本身已经烟消云散了，只不过这些私有属性和方法被引用，一直存在缓存中。实例化后，这些私有属性和方法并没有真实的存在对象中，外部是引用不到的，只有内部的函数才能调用得到。对照一下java代码&lt;/p&gt;
&lt;pre lang=&quot;java5&quot;&gt;class Person  {
  ...

  private String secret = &quot;himitsu&quot;;
  private void pee (){
    //use xxx
  }
}&lt;/pre&gt;
&lt;p&gt;这是还有人会问，怎么没有静态方法，其实这个对于js来说很简单，因为所有的对象都能动态添加属性和方法，所以添加静态属性和方法就很简单了&lt;/p&gt;
&lt;pre lang=&quot;javascript&quot;&gt;Person.bone = '206';&lt;/pre&gt;
&lt;p&gt;这样就定义了一个静态属性，那么如果想把这个静态属性定义在构造函数中要怎么做呢？那也好办，只需修改一下返回的函数就可以了。&lt;/p&gt;
&lt;pre lang=&quot;javascript&quot;&gt;var Person = (function(){
  var secret = 'himitsu';      //private attribute
  var pee = function(){        //private method
    //use xxx
  };

  var value = function(leg) {
    this.leg = leg;            //public attibute
    this.run = function(){     //public method
        //run by leg
    };
    this.talk = function(){    //ref secret
      alert(secret);
    };
  };

  value.bone = '206';          //static attribute

  return value;
})();&lt;/pre&gt;
&lt;p&gt;现在我可以来模拟各种面向对象的关键字了，final还没想到一个好的实现方法，虽然在这里解释半天的面向对象实现方式，但我不太推荐使用面向对象。js有非常好的原型系统，如果运用熟练绝对能达到期望。&lt;br /&gt;
&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/10/input-bug-under-strictmode/&quot; title=&quot;input在strict mode下的bug&quot;&gt;input在strict mode下的bug&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/10/jquery-extend/&quot; title=&quot;jquery扩展&quot;&gt;jquery扩展&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/05/think-jquery/&quot; title=&quot;JQuery之我见&quot;&gt;JQuery之我见&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/05/optimize-form-using-jquery/&quot; title=&quot;使用JQuery优化表单&quot;&gt;使用JQuery优化表单&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/03/for-in-iteration/&quot; title=&quot;for in循环&quot;&gt;for in循环&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/336884268/popomore/feedsky/s.gif?r=http://chuo.me/2009/10/js-oo-instantiation/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884268/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884268/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=b76ca3eee6436de34f543e1ba2097dfb&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=b76ca3eee6436de34f543e1ba2097dfb&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=cbc00eeb631d0d0c0940a5c9e5587367&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=cbc00eeb631d0d0c0940a5c9e5587367&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=6a1c25a869f1556dcdf2b4d54691bf85&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=6a1c25a869f1556dcdf2b4d54691bf85&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=fe60bc0229692af031459976c960ccc0&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=fe60bc0229692af031459976c960ccc0&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><category domain="http://chuo.me">UED</category><category domain="http://chuo.me">javascript</category><category domain="http://chuo.me">面向对象</category><pubDate>Fri, 23 Oct 2009 20:31:32 +0800</pubDate><guid isPermaLink="false">http://chuo.me/?p=604</guid><dc:creator>popomore</dc:creator><fs:srclink>http://chuo.me/2009/10/js-oo-instantiation/</fs:srclink><fs:srcfeed>http://chuo.me/feed/atom/</fs:srcfeed><fs:itemid>feedsky/popomore/~7314125/336884268/5194874</fs:itemid></item><item><title>浏览器辨识CSS</title><link atom:type="text/html">http://chuo.me/2009/09/css-browser/</link><author xmlns="http://www.w3.org/2005/Atom"><name>popomore</name></author><id xmlns="http://www.w3.org/2005/Atom">http://chuo.me/?p=592</id><content xmlns="http://www.w3.org/2005/Atom" type="html" xml:base="http://chuo.me/2009/09/css-browser/">&lt;p&gt;最近在做项目的时候常关注浏览器兼容性的问题，浏览器对CSS的渲染也各有不同，所以同一个CSS属性在不同浏览器的效果可能会不同，那么可以对不同的浏览器使用不同的CSS属性。&lt;/p&gt;
&lt;p&gt;还好各种浏览器都有特殊的识别符，尤其是IE。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;CSS后面的优先级比前面的高&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;span style=&quot;color: #000000;&quot;&gt;表示重要性，如果同时设置两个值的话那么&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;span style=&quot;color: #000000;&quot;&gt;的优先级较高&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;标准浏览器都支持&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;span style=&quot;color: #000000;&quot;&gt;，但不支持*和_&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;ie6支持*，还有特有的_&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;ie7支持*，同时也支持&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;IE6不支持&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;/span&gt;&lt;/h3&gt;
&lt;pre&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;.pro1 {&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;
   background-color:red&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;/span&gt;;
   background-color:green;
}
&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;IE6能够解析上面两条，但是忽略了&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;span style=&quot;color: #000000;&quot;&gt;，所以第一条并没有优先级，只是按照顺序解析，最终会显示绿色。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;区分IE6和Firefox&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;pre&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;.pro2 {
    background-color:red&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;/span&gt;;
    background-color:green;
}
&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;IE6如上面所说，会显示绿色；而firefox能识别&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;，第一条的优先级会比较高，那么firefox下会显示红色。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;第二条也可以在前面加上*和_，因为firefox无法识别，那么不加&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;/span&gt;也能区分IE6和firefox，如&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;.pro2 {
    background-color:red;
    _background-color:green;
}&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;h3&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;区分IE7和Firefox&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;pre&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;.pro3 {
    background-color:red;
    *background-color:green;
}
&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;IE7能识别*，而firefox不能，所以两者还是很好区分的，但要注意顺序。IE7会显示绿色，firefox会显示红色。&lt;/p&gt;
&lt;h3&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;区分IE6和IE7&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;pre&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;.pro4 {
    background-color:green;
    _background-color:red;
}&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;_是IE6的特殊属性，所以IE7只能识别第一条显示绿色，IE6两条都能识别显示为红色。&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;区分IE6，Firefox和IE7&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;pre&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;.pro5{
    background-color:blue;
    *background-color:green&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;/span&gt;;
    *background-color:red;
}&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;首先第一条区分开firefox，firefox不能识别*，所以显示为蓝色；IE7能识别&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;span style=&quot;color: #000000;&quot;&gt;，所以显示为绿色；IE6都能识别，所以按照顺序显示红色。这里同样可以用_来区分IE6和IE7。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/12/ie6-position-fixed-bug/&quot; title=&quot;纯CSS解决ie6下position:fixed问题&quot;&gt;纯CSS解决ie6下position:fixed问题&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/03/top-left-in-css/&quot; title=&quot;CSS中的top和left&quot;&gt;CSS中的top和left&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content><thr:total>0</thr:total><description>最近在做项目的时候常关注浏览器兼容性的问题，浏览器对CSS的渲染也各有不同，所以同一个CSS属性在不同浏览器的效果可能会不同，那么可以对不同的浏览器使用不同的CSS属性。
还好各种浏览器都有特殊的识别符，尤其是IE。

CSS后面的优先级比前面的高
!important表示重要性，如果同时设置两个值的话那么!important的优先级较高
标准浏览器都支持!important，但不支持*和_
ie6支持*，还有特有的_
ie7支持*，同时也支持!important

IE6不支持!important
.pro1 {
   background-color:red!important;
   background-color:green;
}

IE6能够解析上面两条，但是忽略了!important，所以第一条并没有优先级，只是按照顺序解析，最终会显示绿色。
区分IE6和Firefox
.pro2 {
    background-color:red!important;
    background-color:green;
}

IE6如上面所说，会显示绿色；而firefox能识别!important，第一条的优先级会比较高，那么firefox下会显示红色。
第二条也可以在前面加上*和_，因为firefox无法识别，那么不加!important也能区分IE6和firefox，如
.pro2 {
    background-color:red;
    _background-color:green;
}
区分IE7和Firefox
.pro3 {
    background-color:red;
    *background-color:green;
}

IE7能识别*，而firefox不能，所以两者还是很好区分的，但要注意顺序。IE7会显示绿色，firefox会显示红色。
区分IE6和IE7
.pro4 {
    background-color:green;
    _background-color:red;
}
_是IE6的特殊属性，所以IE7只能识别第一条显示绿色，IE6两条都能识别显示为红色。

区分IE6，Firefox和IE7
.pro5{
    background-color:blue;
    *background-color:green!important;
    *background-color:red;
}
首先第一条区分开firefox，firefox不能识别*，所以显示为蓝色；IE7能识别!important，所以显示为绿色；IE6都能识别，所以按照顺序显示红色。这里同样可以用_来区分IE6和IE7。


Related

纯CSS解决ie6下position:fixed问题
CSS中的top和left&lt;img src=&quot;http://www1.feedsky.com/t1/336884270/popomore/feedsky/s.gif?r=http://chuo.me/2009/09/css-browser/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884270/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884270/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=c18917aefce6409a38b37f4576a23eef&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=c18917aefce6409a38b37f4576a23eef&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=e3c7885cc5f0cc94fe9bd5dbc7e31394&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=e3c7885cc5f0cc94fe9bd5dbc7e31394&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=5a8a70f3c140190acfd39d4ae5b10a8b&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=5a8a70f3c140190acfd39d4ae5b10a8b&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=34eefe903d9c01c197c8e9eda981082e&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=34eefe903d9c01c197c8e9eda981082e&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><content:encoded>&lt;p&gt;最近在做项目的时候常关注浏览器兼容性的问题，浏览器对CSS的渲染也各有不同，所以同一个CSS属性在不同浏览器的效果可能会不同，那么可以对不同的浏览器使用不同的CSS属性。&lt;/p&gt;
&lt;p&gt;还好各种浏览器都有特殊的识别符，尤其是IE。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;CSS后面的优先级比前面的高&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;span style=&quot;color: #000000;&quot;&gt;表示重要性，如果同时设置两个值的话那么&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;span style=&quot;color: #000000;&quot;&gt;的优先级较高&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;标准浏览器都支持&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;span style=&quot;color: #000000;&quot;&gt;，但不支持*和_&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;ie6支持*，还有特有的_&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;ie7支持*，同时也支持&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;IE6不支持&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;/span&gt;&lt;/h3&gt;
&lt;pre&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;.pro1 {&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;
   background-color:red&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;/span&gt;;
   background-color:green;
}
&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;IE6能够解析上面两条，但是忽略了&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;span style=&quot;color: #000000;&quot;&gt;，所以第一条并没有优先级，只是按照顺序解析，最终会显示绿色。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;区分IE6和Firefox&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;pre&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;.pro2 {
    background-color:red&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;/span&gt;;
    background-color:green;
}
&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;IE6如上面所说，会显示绿色；而firefox能识别&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;，第一条的优先级会比较高，那么firefox下会显示红色。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;第二条也可以在前面加上*和_，因为firefox无法识别，那么不加&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;/span&gt;也能区分IE6和firefox，如&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;.pro2 {
    background-color:red;
    _background-color:green;
}&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;h3&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;区分IE7和Firefox&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;pre&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;.pro3 {
    background-color:red;
    *background-color:green;
}
&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;IE7能识别*，而firefox不能，所以两者还是很好区分的，但要注意顺序。IE7会显示绿色，firefox会显示红色。&lt;/p&gt;
&lt;h3&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;区分IE6和IE7&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;pre&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;.pro4 {
    background-color:green;
    _background-color:red;
}&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;_是IE6的特殊属性，所以IE7只能识别第一条显示绿色，IE6两条都能识别显示为红色。&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;区分IE6，Firefox和IE7&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;pre&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;.pro5{
    background-color:blue;
    *background-color:green&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;/span&gt;;
    *background-color:red;
}&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;首先第一条区分开firefox，firefox不能识别*，所以显示为蓝色；IE7能识别&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;!important&lt;span style=&quot;color: #000000;&quot;&gt;，所以显示为绿色；IE6都能识别，所以按照顺序显示红色。这里同样可以用_来区分IE6和IE7。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/12/ie6-position-fixed-bug/&quot; title=&quot;纯CSS解决ie6下position:fixed问题&quot;&gt;纯CSS解决ie6下position:fixed问题&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2009/03/top-left-in-css/&quot; title=&quot;CSS中的top和left&quot;&gt;CSS中的top和left&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/336884270/popomore/feedsky/s.gif?r=http://chuo.me/2009/09/css-browser/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884270/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884270/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=c18917aefce6409a38b37f4576a23eef&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=c18917aefce6409a38b37f4576a23eef&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=e3c7885cc5f0cc94fe9bd5dbc7e31394&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=e3c7885cc5f0cc94fe9bd5dbc7e31394&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=5a8a70f3c140190acfd39d4ae5b10a8b&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=5a8a70f3c140190acfd39d4ae5b10a8b&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=34eefe903d9c01c197c8e9eda981082e&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=34eefe903d9c01c197c8e9eda981082e&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><category domain="http://chuo.me">UED</category><category domain="http://chuo.me">css</category><category domain="http://chuo.me">兼容性</category><pubDate>Tue, 29 Sep 2009 15:05:08 +0800</pubDate><guid isPermaLink="false">http://chuo.me/?p=592</guid><dc:creator>popomore</dc:creator><fs:srclink>http://chuo.me/2009/09/css-browser/</fs:srclink><fs:srcfeed>http://chuo.me/feed/atom/</fs:srcfeed><fs:itemid>feedsky/popomore/~7314125/336884270/5194874</fs:itemid></item><item><title>不算总结的总结</title><link atom:type="text/html">http://chuo.me/2009/07/yesterday-tomorrow/</link><author xmlns="http://www.w3.org/2005/Atom"><name>popomore</name></author><id xmlns="http://www.w3.org/2005/Atom">http://chuo.me/?p=587</id><content xmlns="http://www.w3.org/2005/Atom" type="html" xml:base="http://chuo.me/2009/07/yesterday-tomorrow/">&lt;p&gt;深夜，手指敲着键盘，打了数行字紧接着按了退格键。在这个闷热的夏天半夜竟是如此凉爽，而我的思絮竟是如此混乱。每到这个时候我总是会显得放松，过去告一段落，面向新的未来，我又这样平稳的走上了一个台阶。&lt;/p&gt;
&lt;p&gt;我心中一直信奉的就是&lt;em&gt;船到桥头自然直&lt;/em&gt;，这句话就好像出自一个胸无大志的人之口，但却陪我度过了四分之一的人生。前不久看了一期《我们》，叫做《&lt;a href=&quot;http://www.youku.com/playlist_show/id_3514671.html&quot;&gt;就业，你准备好了么？&lt;/a&gt;》，康子冉同学说过一个成语&lt;em&gt;因人成事&lt;/em&gt;，我就有点这个味道。&lt;/p&gt;
&lt;p&gt;我从小学说起，再前面就没什么印象了。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;只记得上小学那年我们家三口都在深圳，小学报名还是我爸徒弟帮报的，如果没上就得晚一年。这虽然不算什么大事，但也算上了一个相对较好的学校。&lt;/li&gt;
&lt;li&gt;上初中时，我们市的初中是按地段划分的，当时也是老妈的远见，正好在那买了房子，于是我顺理成章的上了全市最好的初中。&lt;/li&gt;
&lt;li&gt;中考时，也不知道哪个官员收了贿赂，突然限制了我们初中升入一中（全市最好的高中）的名额，而且就我们这年。当时公费自费的限制就在5分之间，其他学校可以以低于我们学校5分的成绩拿到公费名额，而我却正好在这个分数段中。我妈也经常拿这个作为饭后聊资，当然花了7500还是进入了全市最好的高中。&lt;/li&gt;
&lt;li&gt;高考前我并不被班主任看好，他觉得我最多能考个2本，当我拿着第一志愿为浙大的志愿书时他非常惊讶（浙江是先查分后填志愿）。但是我并没有考入浙大，而是上了一所211工程的大学，这所大学是我在爸妈睡后自己翻书找的，因为爸妈并没有想到会落榜，这也算是奇迹之一吧。&lt;/li&gt;
&lt;li&gt;考研时，老妈正好碰到华师毕业的叔叔，说可以给我介绍一个老师，所以我很早就选定了老师，最后以最后一名的成绩危险考进了华师。选择华师也是非常的神奇，有次和本科同学聊天，她说考华师吧，我说好，于是就冲着去了，期间并没有查过其他学校，别人问起来都说是离家近。&lt;/li&gt;
&lt;li&gt;今年就业形式严峻，当爸妈还在为我工作着急的时候，“找到了”这三个字让他们开心不已。我并没有参加招聘会，只在一次宣讲会上进入了面试，然后顺利就业。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;到现在的人生看似一帆风顺，这样就是成功吗？进入较好的企业，拿到较好的工资就是成功吗？朱民行长在评价康子冉同学时，说他是一条波动的曲线，我的可能也是如此。在每一个阶段中的波动性非常大，不管在什么阶段永远没有一个稳步前进的势头，而在每个阶段之间却是陡然上升。这个上升的原因可能就是刚才所说的&lt;strong&gt;因人成事&lt;/strong&gt;吧，我是由外在动力或者他人的帮助才取得这样的上升，并不可完成看成个人的成果。并不是说我不努力，而是没有一直努力，我妈也常说我后劲很足，可我不为此而高兴。&lt;/p&gt;
&lt;p&gt;我一直是船到桥头自然直的心态，从不会做看不到的规划，而且我也很难实施。就像答辩前我准备在上班前做很多事，但真放假了就散下来了，只到今天才捡起书来。所以别人问我理想，我根本没有。我小时候也从没想过长大想要做什么，估计那时候还不知道程序员是个什么东西。现在长大了不禁有点遗憾，一个没有理想的人能成功么？我这样一帆风顺的走过来并不是好事，现在就像长时间关在笼里的狮子，已经无法适应大草原了，就算在笼子另一面对着人张牙舞爪，人们也不会惧怕只是觉得好笑。没有挫败感是无法成长的，我一直按部就班地走，有坡就上有沟就下，岔口上不会有多于两条路，我就随意地选择一条继续走。这样的人生是不是显得太随意了，因为我还没找到人活着所应有的方式。&lt;strong&gt;我一直认为人活着是为了享乐的，只要自己快乐那么就不虚此行&lt;/strong&gt;，活在这个世上所做的所有事都是为了让自己快乐，如果我们为了这些只存在世上的东西使自己不快乐，那不是本末倒置了么。但我渐渐觉得这是不成熟的想法，这完全是自私的想法，我的快乐可能会被其他人带来痛苦，我不施于也不能过分的索取。&lt;/p&gt;
&lt;p&gt;已经不早了，改天评价下现在的自己吧，当作不能给老板看的自我鉴定。&lt;br /&gt;
&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/12/a-list/&quot; title=&quot;岁末，一份清单&quot;&gt;岁末，一份清单&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/12/%e6%80%bb%e7%bb%93/&quot; title=&quot;总结&quot;&gt;总结&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/10/%e5%9b%9e%e5%88%b0%e8%bf%87%e5%8e%bb/&quot; title=&quot;回到过去&quot;&gt;回到过去&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content><thr:total>5</thr:total><description>深夜，手指敲着键盘，打了数行字紧接着按了退格键。在这个闷热的夏天半夜竟是如此凉爽，而我的思絮竟是如此混乱。每到这个时候我总是会显得放松，过去告一段落，面向新的未来，我又这样平稳的走上了一个台阶。
我心中一直信奉的就是船到桥头自然直，这句话就好像出自一个胸无大志的人之口，但却陪我度过了四分之一的人生。前不久看了一期《我们》，叫做《就业，你准备好了么？》，康子冉同学说过一个成语因人成事，我就有点这个味道。
我从小学说起，再前面就没什么印象了。

只记得上小学那年我们家三口都在深圳，小学报名还是我爸徒弟帮报的，如果没上就得晚一年。这虽然不算什么大事，但也算上了一个相对较好的学校。
上初中时，我们市的初中是按地段划分的，当时也是老妈的远见，正好在那买了房子，于是我顺理成章的上了全市最好的初中。
中考时，也不知道哪个官员收了贿赂，突然限制了我们初中升入一中（全市最好的高中）的名额，而且就我们这年。当时公费自费的限制就在5分之间，其他学校可以以低于我们学校5分的成绩拿到公费名额，而我却正好在这个分数段中。我妈也经常拿这个作为饭后聊资，当然花了7500还是进入了全市最好的高中。
高考前我并不被班主任看好，他觉得我最多能考个2本，当我拿着第一志愿为浙大的志愿书时他非常惊讶（浙江是先查分后填志愿）。但是我并没有考入浙大，而是上了一所211工程的大学，这所大学是我在爸妈睡后自己翻书找的，因为爸妈并没有想到会落榜，这也算是奇迹之一吧。
考研时，老妈正好碰到华师毕业的叔叔，说可以给我介绍一个老师，所以我很早就选定了老师，最后以最后一名的成绩危险考进了华师。选择华师也是非常的神奇，有次和本科同学聊天，她说考华师吧，我说好，于是就冲着去了，期间并没有查过其他学校，别人问起来都说是离家近。
今年就业形式严峻，当爸妈还在为我工作着急的时候，“找到了”这三个字让他们开心不已。我并没有参加招聘会，只在一次宣讲会上进入了面试，然后顺利就业。

到现在的人生看似一帆风顺，这样就是成功吗？进入较好的企业，拿到较好的工资就是成功吗？朱民行长在评价康子冉同学时，说他是一条波动的曲线，我的可能也是如此。在每一个阶段中的波动性非常大，不管在什么阶段永远没有一个稳步前进的势头，而在每个阶段之间却是陡然上升。这个上升的原因可能就是刚才所说的因人成事吧，我是由外在动力或者他人的帮助才取得这样的上升，并不可完成看成个人的成果。并不是说我不努力，而是没有一直努力，我妈也常说我后劲很足，可我不为此而高兴。
我一直是船到桥头自然直的心态，从不会做看不到的规划，而且我也很难实施。就像答辩前我准备在上班前做很多事，但真放假了就散下来了，只到今天才捡起书来。所以别人问我理想，我根本没有。我小时候也从没想过长大想要做什么，估计那时候还不知道程序员是个什么东西。现在长大了不禁有点遗憾，一个没有理想的人能成功么？我这样一帆风顺的走过来并不是好事，现在就像长时间关在笼里的狮子，已经无法适应大草原了，就算在笼子另一面对着人张牙舞爪，人们也不会惧怕只是觉得好笑。没有挫败感是无法成长的，我一直按部就班地走，有坡就上有沟就下，岔口上不会有多于两条路，我就随意地选择一条继续走。这样的人生是不是显得太随意了，因为我还没找到人活着所应有的方式。我一直认为人活着是为了享乐的，只要自己快乐那么就不虚此行，活在这个世上所做的所有事都是为了让自己快乐，如果我们为了这些只存在世上的东西使自己不快乐，那不是本末倒置了么。但我渐渐觉得这是不成熟的想法，这完全是自私的想法，我的快乐可能会被其他人带来痛苦，我不施于也不能过分的索取。
已经不早了，改天评价下现在的自己吧，当作不能给老板看的自我鉴定。
Related

岁末，一份清单
总结
回到过去&lt;img src=&quot;http://www1.feedsky.com/t1/336884271/popomore/feedsky/s.gif?r=http://chuo.me/2009/07/yesterday-tomorrow/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884271/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884271/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=6220fdd83d5075821e3a1eb077c9694a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=6220fdd83d5075821e3a1eb077c9694a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=2d92751e13be474076558366d882399d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=2d92751e13be474076558366d882399d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=abf7ae3d5169a11e03ef723b28a2c2f3&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=abf7ae3d5169a11e03ef723b28a2c2f3&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=e9a96c4489b6b240f66981f306d8b75e&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=e9a96c4489b6b240f66981f306d8b75e&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</description><content:encoded>&lt;p&gt;深夜，手指敲着键盘，打了数行字紧接着按了退格键。在这个闷热的夏天半夜竟是如此凉爽，而我的思絮竟是如此混乱。每到这个时候我总是会显得放松，过去告一段落，面向新的未来，我又这样平稳的走上了一个台阶。&lt;/p&gt;
&lt;p&gt;我心中一直信奉的就是&lt;em&gt;船到桥头自然直&lt;/em&gt;，这句话就好像出自一个胸无大志的人之口，但却陪我度过了四分之一的人生。前不久看了一期《我们》，叫做《&lt;a href=&quot;http://www.youku.com/playlist_show/id_3514671.html&quot;&gt;就业，你准备好了么？&lt;/a&gt;》，康子冉同学说过一个成语&lt;em&gt;因人成事&lt;/em&gt;，我就有点这个味道。&lt;/p&gt;
&lt;p&gt;我从小学说起，再前面就没什么印象了。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;只记得上小学那年我们家三口都在深圳，小学报名还是我爸徒弟帮报的，如果没上就得晚一年。这虽然不算什么大事，但也算上了一个相对较好的学校。&lt;/li&gt;
&lt;li&gt;上初中时，我们市的初中是按地段划分的，当时也是老妈的远见，正好在那买了房子，于是我顺理成章的上了全市最好的初中。&lt;/li&gt;
&lt;li&gt;中考时，也不知道哪个官员收了贿赂，突然限制了我们初中升入一中（全市最好的高中）的名额，而且就我们这年。当时公费自费的限制就在5分之间，其他学校可以以低于我们学校5分的成绩拿到公费名额，而我却正好在这个分数段中。我妈也经常拿这个作为饭后聊资，当然花了7500还是进入了全市最好的高中。&lt;/li&gt;
&lt;li&gt;高考前我并不被班主任看好，他觉得我最多能考个2本，当我拿着第一志愿为浙大的志愿书时他非常惊讶（浙江是先查分后填志愿）。但是我并没有考入浙大，而是上了一所211工程的大学，这所大学是我在爸妈睡后自己翻书找的，因为爸妈并没有想到会落榜，这也算是奇迹之一吧。&lt;/li&gt;
&lt;li&gt;考研时，老妈正好碰到华师毕业的叔叔，说可以给我介绍一个老师，所以我很早就选定了老师，最后以最后一名的成绩危险考进了华师。选择华师也是非常的神奇，有次和本科同学聊天，她说考华师吧，我说好，于是就冲着去了，期间并没有查过其他学校，别人问起来都说是离家近。&lt;/li&gt;
&lt;li&gt;今年就业形式严峻，当爸妈还在为我工作着急的时候，“找到了”这三个字让他们开心不已。我并没有参加招聘会，只在一次宣讲会上进入了面试，然后顺利就业。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;到现在的人生看似一帆风顺，这样就是成功吗？进入较好的企业，拿到较好的工资就是成功吗？朱民行长在评价康子冉同学时，说他是一条波动的曲线，我的可能也是如此。在每一个阶段中的波动性非常大，不管在什么阶段永远没有一个稳步前进的势头，而在每个阶段之间却是陡然上升。这个上升的原因可能就是刚才所说的&lt;strong&gt;因人成事&lt;/strong&gt;吧，我是由外在动力或者他人的帮助才取得这样的上升，并不可完成看成个人的成果。并不是说我不努力，而是没有一直努力，我妈也常说我后劲很足，可我不为此而高兴。&lt;/p&gt;
&lt;p&gt;我一直是船到桥头自然直的心态，从不会做看不到的规划，而且我也很难实施。就像答辩前我准备在上班前做很多事，但真放假了就散下来了，只到今天才捡起书来。所以别人问我理想，我根本没有。我小时候也从没想过长大想要做什么，估计那时候还不知道程序员是个什么东西。现在长大了不禁有点遗憾，一个没有理想的人能成功么？我这样一帆风顺的走过来并不是好事，现在就像长时间关在笼里的狮子，已经无法适应大草原了，就算在笼子另一面对着人张牙舞爪，人们也不会惧怕只是觉得好笑。没有挫败感是无法成长的，我一直按部就班地走，有坡就上有沟就下，岔口上不会有多于两条路，我就随意地选择一条继续走。这样的人生是不是显得太随意了，因为我还没找到人活着所应有的方式。&lt;strong&gt;我一直认为人活着是为了享乐的，只要自己快乐那么就不虚此行&lt;/strong&gt;，活在这个世上所做的所有事都是为了让自己快乐，如果我们为了这些只存在世上的东西使自己不快乐，那不是本末倒置了么。但我渐渐觉得这是不成熟的想法，这完全是自私的想法，我的快乐可能会被其他人带来痛苦，我不施于也不能过分的索取。&lt;/p&gt;
&lt;p&gt;已经不早了，改天评价下现在的自己吧，当作不能给老板看的自我鉴定。&lt;br /&gt;
&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/12/a-list/&quot; title=&quot;岁末，一份清单&quot;&gt;岁末，一份清单&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/12/%e6%80%bb%e7%bb%93/&quot; title=&quot;总结&quot;&gt;总结&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://chuo.me/2008/10/%e5%9b%9e%e5%88%b0%e8%bf%87%e5%8e%bb/&quot; title=&quot;回到过去&quot;&gt;回到过去&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/336884271/popomore/feedsky/s.gif?r=http://chuo.me/2009/07/yesterday-tomorrow/&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/feedsky/popomore/336884271/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/feedsky/popomore/336884271/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class=&quot;fsflare&quot;&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=6220fdd83d5075821e3a1eb077c9694a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=6220fdd83d5075821e3a1eb077c9694a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=2d92751e13be474076558366d882399d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=2d92751e13be474076558366d882399d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=abf7ae3d5169a11e03ef723b28a2c2f3&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=abf7ae3d5169a11e03ef723b28a2c2f3&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/popomore?a=e9a96c4489b6b240f66981f306d8b75e&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/popomore?i=e9a96c4489b6b240f66981f306d8b75e&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded><category domain="http://chuo.me">思考</category><category domain="http://chuo.me">人生</category><category domain="http://chuo.me">就业</category><category domain="http://chuo.me">总结</category><category domain="http://chuo.me">过去</category><pubDate>Tue, 14 Jul 2009 05:17:56 +0800</pubDate><guid isPermaLink="false">http://chuo.me/?p=587</guid><dc:creator>popomore</dc:creator><fs:srclink>http://chuo.me/2009/07/yesterday-tomorrow/</fs:srclink><fs:srcfeed>http://chuo.me/feed/atom/</fs:srcfeed><fs:itemid>feedsky/popomore/~7314125/336884271/5194874</fs:itemid></item></channel></rss>