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

<channel>
	<title>伟景博客 &#187; Tab</title>
	<atom:link href="http://pengfubing.com/content/tag/tab/feed" rel="self" type="application/rss+xml" />
	<link>http://pengfubing.com</link>
	<description>专注于膜技术，水处理，节能减排，循环经济，Wordpress，留学生活等</description>
	<lastBuildDate>Mon, 12 Jul 2010 23:21:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>用 jQuery 实现灵活的 tab 切换效果zz</title>
		<link>http://pengfubing.com/content/wordpress/jquery-tab-zz.html</link>
		<comments>http://pengfubing.com/content/wordpress/jquery-tab-zz.html#comments</comments>
		<pubDate>Fri, 08 Jan 2010 06:56:57 +0000</pubDate>
		<dc:creator>Welkin</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[Tab]]></category>

		<guid isPermaLink="false">http://pengfubing.com/?p=458</guid>
		<description><![CDATA[原文链接：http://www.xiaorsz.com/jquery-realize-tab-switch-effect/ Tab 切换效果现在网上到处都是，特别是一些大型的门户，为了在有限的空间内呈现更多的内容，往往都采取了这种方式。腾讯的迷你首页就非常的典型。我以前用的 wordpresss 皮肤 iNove 中，其实也有这样的效果，就在 Trackbacks 和 Comments 的切换处，就是一个简单的应用。 寒假期间也给自己的博客搞了个，是用的 jQuery 实现的，实现的代码是从网上收集来的，自己感觉是非常不错的代码，非常简单，但不失灵活，而且很好的做到了表现和行为的分离。现在就跟大家分享一下，建议已经引入 jQuery 框架的同志们使用，如果因为这么几行代码而专门引入 jQuery ，感觉有点太夸张了，其实这样的 JS 代码网上多的是，随便 google 一下就 N 多了！！ 效果预览 实例见文章的结尾处相关文章的部分。 实现思路 大家看源代码就应该能看到了，我这里三部分内容其实在页面加载的时候都加载了，只是只显示了一块，另外的两块隐藏。然后用 JS 和 CSS 来对鼠标动作进行响应，来达到所想来的效果。这个是 tab 切换效果的基本思路。当然同一些大型门户不同，他们的 tab 都实现了异步传输，即在页面加载的时候并不会加载，而是在需要的时候才从服务器进行传输并显示，这样在技术上显然会比较复杂，对于小网站来说，的确没多少 必要！！ 具体代码 这里只展示下我用到的代码并进行一些解释，大家可根据实现情况进行修改。 首先看 HTML &#60;div class=&#8221;tab&#8221;&#62; &#60;p&#62; &#60;span id=&#8221;tab1&#8243;&#62;tab1&#60;/span&#62; &#60;span id=&#8221;tab2&#8243;&#62;tab2&#60;/span&#62; &#60;span id=&#8221;tab3&#8243;&#62;tab3&#60;/span&#62;&#60;/p&#62; &#60;ul class=&#8221;tab1&#8243;&#62;以 LI 形式呈现的 tab1 [...]]]></description>
			<content:encoded><![CDATA[<p>原文链接：http://www.xiaorsz.com/jquery-realize-tab-switch-effect/</p>
<p>Tab 切换效果现在网上到处都是，特别是一些大型的门户，为了在有限的空间内呈现更多的内容，往往都采取了这种方式。腾讯的迷你首页就非常的典型。我以前用的 wordpresss 皮肤 iNove 中，其实也有这样的效果，就在 Trackbacks 和 Comments 的切换处，就是一个简单的应用。</p>
<p><span id="more-458"></span>寒假期间也给自己的博客搞了个，是用的 jQuery 实现的，实现的代码是从网上收集来的，自己感觉是非常不错的代码，非常简单，但不失灵活，而且很好的做到了表现和行为的分离。现在就跟大家分享一下，建议已经引入 jQuery 框架的同志们使用，如果因为这么几行代码而专门引入 jQuery ，感觉有点太夸张了，其实这样的 JS 代码网上多的是，随便 google 一下就 N 多了！！</p>
<h4>效果预览</h4>
<p><img title="tab 切换效果" src="http://lh5.ggpht.com/_FrcJBJEG5fw/SYz-W6whF3I/AAAAAAAAAP4/n-SeqzjNKqQ/s800/1.jpg" alt="tab 效果" width="512" height="145" /></p>
<p>实例见文章的结尾处相关文章的部分。</p>
<h4>实现思路</h4>
<p>大家看源代码就应该能看到了，我这里三部分内容其实在页面加载的时候都加载了，只是只显示了一块，另外的两块隐藏。然后用 JS 和 CSS 来对鼠标动作进行响应，来达到所想来的效果。这个是 tab 切换效果的基本思路。当然同一些大型门户不同，他们的 tab 都实现了异步传输，即在页面加载的时候并不会加载，而是在需要的时候才从服务器进行传输并显示，这样在技术上显然会比较复杂，对于小网站来说，的确没多少 必要！！</p>
<h4>具体代码</h4>
<p>这里只展示下我用到的代码并进行一些解释，大家可根据实现情况进行修改。</p>
<p><strong>首先看 HTML</strong></p>
<div>
<div>&lt;div class=&#8221;tab&#8221;&gt;<br />
&lt;p&gt;<br />
&lt;span id=&#8221;tab1&#8243;&gt;tab1&lt;/span&gt;<br />
&lt;span id=&#8221;tab2&#8243;&gt;tab2&lt;/span&gt;<br />
&lt;span id=&#8221;tab3&#8243;&gt;tab3&lt;/span&gt;&lt;/p&gt;<br />
&lt;ul class=&#8221;tab1&#8243;&gt;以 LI 形式呈现的 tab1 的内容&lt;/ul&gt;<br />
&lt;ul class=&#8221;tab2&#8243;&gt;以 LI 形式呈现的 tab2 的内容&lt;/ul&gt;<br />
&lt;ul class=&#8221;tab3&#8243;&gt;以 LI 形式呈现的 tab3 的内容&lt;/ul&gt;<br />
&lt;/div&gt;</div>
</div>
<p>看下其实挺简单，一个 P 里三个 span ，然后对应三个 ul 列表，只需要对应的 span 的 ID 和 ul 的 class 一致就可以了。至于 ul 中的内容，就因人而异了！！</p>
<p>我这里是用了两个插件：<a href="http://fairyfish.net/2007/09/12/wordpress-23-related-posts-plugin/">WordPress Related Posts</a> 和 <a href="http://fantasyworld.idv.tw/programs/wp_postviews_plus/">WP-PostViews Plus</a> 来调用相关文章和热门文章的。于是，我是代码是这样的：</p>
<div>
<div>&lt;div class=&#8221;entry-foot&#8221;&gt;<br />
&lt;p&gt;<br />
&lt;span id=&#8221;related_post&#8221;&gt;相关文章&lt;/span&gt;<br />
&lt;span id=&#8221;mhot&#8221;&gt;本月热门&lt;/span&gt;<br />
&lt;span id=&#8221;allhot&#8221;&gt;点击排行&lt;/span&gt;&lt;/p&gt;<br />
&lt;?php wp23_related_posts();?&gt;<br />
&lt;ul class=&#8221;mhot&#8221;&gt;&lt;?php get_timespan_most_viewed(&#8216;post&#8217;, 5, 30, true, true, 0)?&gt;&lt;/ul&gt;<br />
&lt;ul class=&#8221;allhot&#8221;&gt;&lt;?php get_most_viewed(&#8216;post&#8217;, 5, 30, true, true, 0)?&gt;&lt;/ul&gt;<br />
&lt;/div&gt;</div>
</div>
<p><strong>CSS代码</strong></p>
<div>
<div>.entry-foot{background-color:#FAFAFA;margin:5px 8px;padding:5px 10px;}<br />
.entry-foot p span{background-color:#EFEFEF;border:1px solid<br />
#CCCCCC;cursor:pointer;margin-right:6px;padding:2px 5px;}<br />
.entry-foot p span.current{background-color:#FAFAFA; border-bottom-color:#fafafa;}<br />
.entry-foot p{border-bottom:1px solid #CCCCCC;font-weight:bold;padding:0 10px 2px;}<br />
.entry-foot li{border-bottom:1px dotted #CCCCCC;padding-bottom:3px;margin:5px 0;}<br />
.entry-foot .mhot,.entry-foot.allhot{display:none;}</div>
</div>
<p>样式大家可以自己去设置，其中 .current 的样式就是鼠标移主去时 span 的样式了！</p>
<p><strong>jQuery 代码</strong></p>
<div>
<div>$(document).ready(function(){<br />
$(&#8220;.entry-foot span:first&#8221;).addClass(&#8220;current&#8221;);  //为第一个span添加 .current 的样式，默认选中<br />
$(&#8220;.entry-foot ul:not(:first)&#8221;).hide();  //ul 不是第一个时隐藏<br />
$(&#8220;.entry-foot span&#8221;).mouseover(function(){  //鼠标移到 span 上时触发函数<br />
$(&#8220;.entry-foot span&#8221;).removeClass(&#8220;current&#8221;);  //为第一个 span 移除 .current 样式<br />
$(this).addClass(&#8220;current&#8221;);  //为触发的 span 添加样式<br />
$(&#8220;.entry-foot ul&#8221;).hide();  //隐藏 ul<br />
$(&#8220;.&#8221;+$(this).attr(&#8220;id&#8221;)).fadeIn(&#8220;slow&#8221;);  //这句是核心，class(.) 和触发 span 的ID 一致的 fadeIn(渐显)<br />
});});</div>
</div>
<p>完了，怎么样，应该挺容易理解的吧！本文只是提供一个思路或是方法，具体的代码大家可以根据自己的实际情况来写。有问题请留言，我会尽量答复。</p>
<h2  class="related_post_title">相关文章</h2><ul class="related_post"><li><a href="http://pengfubing.com/content/wordpress/jquery-tab.html" title="jQuery实现Tab切换效果">jQuery实现Tab切换效果</a></li><li><a href="http://pengfubing.com/content/wordpress/wordpress-jquery-tabs.html" title="用WordPress内置jQuery制作Tabs滑动效果">用WordPress内置jQuery制作Tabs滑动效果</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://pengfubing.com/content/wordpress/jquery-tab-zz.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>jQuery实现Tab切换效果</title>
		<link>http://pengfubing.com/content/wordpress/jquery-tab.html</link>
		<comments>http://pengfubing.com/content/wordpress/jquery-tab.html#comments</comments>
		<pubDate>Fri, 08 Jan 2010 06:54:57 +0000</pubDate>
		<dc:creator>Welkin</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[Tab]]></category>

		<guid isPermaLink="false">http://pengfubing.com/?p=454</guid>
		<description><![CDATA[原文链接：http://immmmm.com/add-jquery-tab-switch-effect.html 啥是“Tab 切换效果”，这都不知道那肯定落伍了！其实实现这个有很多方法，随手一搜就是一大把。不过，既然已经加载了jQuery，那就物尽其用，参考了这篇文章《用 jQuery 实现灵活的 tab 切换效果》。 老规矩，三块代码放了先： &#60;div id="sidebar-tab"&#62; &#60;div id="tab-title"&#62; &#60;h3&#62;&#60;span id="tab-1" class="current"&#62;最新评论&#60;/span&#62;&#60;span id="tab-2"&#62;近期热评&#60;/span&#62;&#60;span id="tab-3"&#62;随机文章&#60;/span&#62;&#60;/h3&#62; &#60;/div&#62; /* Tab的标题，采用span标签，分别加上了id，并给第一个加上class="current" */ &#60;div id="tab-content"&#62; &#60;ul class="tab-1"&#62;&#60;?php wkc_recent_comments('number=10&#38;length=25'); ?&#62;&#60;/ul&#62; &#60;ul class="tab-2"&#62;&#60;?php wkc_most_commented_posts('number=10&#38;days=300'); ?&#62;&#60;/ul&#62; &#60;ul class="tab-3"&#62;&#60;?php wkc_random_posts('number=10&#38;length=40'); ?&#62;&#60;/ul&#62; &#60;/div&#62; /* Tab的内容，分别加上了与标题对应的class；其中tab-content ul内的函数是调用WP Kit cn插件的 */ &#60;/div&#62; #sidebar-tab{border:1px solid #ccf;margin-bottom:1.5em;overflow:hidden;} #tab-title .current{color:#356aa0;border-bottom:0px;padding:5px 14px;} /* 当前选中标题时的样式 */ #tab-title h3{color:#666;font-size:15px;font-weight:400;} #tab-1,#tab-2,#tab-3{padding:5px [...]]]></description>
			<content:encoded><![CDATA[<div>
<p>原文链接：http://immmmm.com/add-jquery-tab-switch-effect.html</p>
</div>
<div>
<p>啥是“<a title="标签 Tab 下的日志" rel="tag nofollow" href="http://immmmm.com/tag/tab">Tab</a> 切换效果”，这都不知道那肯定落伍了！其实实现这个有很多方法，随手一搜就是一大把。不过，既然已经加载了<a title="标签 jQuery 下的日志" rel="tag nofollow" href="http://immmmm.com/tag/jquery">jQuery</a>，那就物尽其用，参考了这篇文章<a href="http://www.xiaorsz.com/jquery-realize-tab-switch-effect/">《用 jQuery 实现灵活的 tab 切换效果》</a>。</p>
<p><span id="more-454"></span>老规矩，三块代码放了先：</p>
<div>
<div>
<pre>&lt;div id="sidebar-tab"&gt;
	&lt;div id="tab-title"&gt;
		&lt;h3&gt;&lt;span id="tab-1" class="current"&gt;最新评论&lt;/span&gt;&lt;span id="tab-2"&gt;近期热评&lt;/span&gt;&lt;span id="tab-3"&gt;随机文章&lt;/span&gt;&lt;/h3&gt;
	&lt;/div&gt; /* Tab的标题，采用span标签，分别加上了id，并给第一个加上class="current" */
	&lt;div id="tab-content"&gt;
		&lt;ul class="tab-1"&gt;&lt;?php wkc_recent_comments('number=10&amp;length=25'); ?&gt;&lt;/ul&gt;
		&lt;ul class="tab-2"&gt;&lt;?php wkc_most_commented_posts('number=10&amp;days=300'); ?&gt;&lt;/ul&gt;
		&lt;ul class="tab-3"&gt;&lt;?php wkc_random_posts('number=10&amp;length=40'); ?&gt;&lt;/ul&gt;
	&lt;/div&gt; /* Tab的内容，分别加上了与标题对应的class；其中tab-content ul内的函数是调用WP Kit cn插件的 */
&lt;/div&gt;</pre>
</div>
</div>
<div>
<div>
<pre>#sidebar-tab{border:1px solid #ccf;margin-bottom:1.5em;overflow:hidden;}
#tab-title .current{color:#356aa0;border-bottom:0px;padding:5px 14px;} /* 当前选中标题时的样式 */
#tab-title h3{color:#666;font-size:15px;font-weight:400;}
#tab-1,#tab-2,#tab-3{padding:5px 7px;border-bottom:1px solid #ccf;cursor:pointer;}
#tab-2{border:1px solid #ccf;border-top:none;}
.tab-2,.tab-3{display:none;} /* 这句是用让class=“tab-2”“tab-3”的先隐藏，用CSS控制的好处是没有延迟；如果用jQuery控制会出现只有当页面全部加载完后，tab-2tab-3中的内容才隐藏 */
#tab-content ul{padding:5px 10px;overflow:hidden;}
#tab-content ul li{padding-top:5px;height:20px;}</pre>
</div>
</div>
<div>
<div>
<pre>$('#tab-title span').mouseover(function(){ //鼠标移至id="tab-title"下的span标签时，触发
	$(this).addClass("current").siblings().removeClass(); //给当前的添加class="current"，并且让其同辈元素（即其余#tab-title span）移除class="current"；
	$("."+$(this).attr("id")).show().siblings().hide(); //让class="鼠标移至的span的id"（即tab-content中对应ul中的内容）显示，并且让其同辈元素（即#tab-content ul）隐藏；
});</pre>
</div>
</div>
<p>OK，代码就这些，使用前提是加载了<a title="标签 jQuery 下的日志" rel="tag nofollow" href="http://immmmm.com/tag/jquery">jQuery</a>。这次折腾是html、css、<a title="标签 jQuery 下的日志" rel="tag nofollow" href="http://immmmm.com/tag/jquery">jQuery</a>代码三管齐下，才做出来这么一个东东，效果还行！</p>
</div>
<h2  class="related_post_title">相关文章</h2><ul class="related_post"><li><a href="http://pengfubing.com/content/wordpress/jquery-tab-zz.html" title="用 jQuery 实现灵活的 tab 切换效果zz">用 jQuery 实现灵活的 tab 切换效果zz</a></li><li><a href="http://pengfubing.com/content/wordpress/wordpress-jquery-tabs.html" title="用WordPress内置jQuery制作Tabs滑动效果">用WordPress内置jQuery制作Tabs滑动效果</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://pengfubing.com/content/wordpress/jquery-tab.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
