<?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>Learning jQuery &#187; jQuery</title>
	<atom:link href="http://www.learningjquery.org/index.php/category/jquery/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.learningjquery.org</link>
	<description>Learning jQuery: Tips, techniques, and tutorials for the jQuery JavaScript library</description>
	<lastBuildDate>Tue, 24 Aug 2010 10:10:35 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>仿iGoogle的拖动及排序效果[乱炖]</title>
		<link>http://www.learningjquery.org/index.php/imitation-and-ranked-by-igoogleu002639s-drag-luandun/</link>
		<comments>http://www.learningjquery.org/index.php/imitation-and-ranked-by-igoogleu002639s-drag-luandun/#comments</comments>
		<pubDate>Tue, 24 Aug 2010 10:10:35 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[jQuery]]></category>
		<category><![CDATA[iGoogle]]></category>
		<category><![CDATA[拖动]]></category>
		<category><![CDATA[排序]]></category>

		<guid isPermaLink="false">http://www.learningjquery.org/?p=226</guid>
		<description><![CDATA[仿iGoogle的拖动及排序效果
可以参见：http://net.tutsplus.com/tutorials/javascript-ajax/inettuts/
有詳細的说明，并有Demo可以在线预览，同时还提供了下载。
在使用的过程中，我遇到一些问题，花了好长时间才解决，在此记下来。
1. js版本问题
下载Demo后，发现它用到的jQuery版本是jquery-1.2.6.min.js。但我们项目中用到的jQuery大都使用了更高的版本，比如1.3.2或是，1.4.2。
如果替换掉Demo中的jQuery，会发现拖动和排序效果失效，但其它效果(编辑，删除)还起作用。上网查了一番，终于找到一解决办法: 在 inettuts.js 中找到 var notSortable = &#8221;;  改成 var notSortable = null; 就可以了。
2. 和jScrollPane的css冲突问题
jScrollPane 是基于jQuery的滚动条效果，可以通过svn更新到本地，(svn 地址： http://jscrollpane.googlecode.com/svn/trunk/ ) 里面包含有Demo可供做测试。
情景再现：我有左右两个列表，左侧使用了jScrollPane。当把左侧的项目拖动到右侧时，要拖动的项总是被遮住；而从右侧拖回左侧则正常。我起初以为是z-index的设置有问题，修改z-index后，问题依然存在。然后，我用jQueryUI中的一些函数设置z-index也没起作用。但是去掉左侧列表的jScrollPane效果后，一切正常。
后来发现是css的原因，我们只需要修改 jScrollPane.css 中 .jScrollPaneContainer， 把其中的 overflow: hidden; 改成 overflow: visible; 如果其它页面中也用到了同样的css，为不影响其它页面，可以仅在当前页修改css.
3. thickbox和这两个js都冲突
情景再现：我在A页面中用js做了拖动，排序及滚动条效果，也就是用到了上面提到的两个js。在B页面使用thickbox弹出A页面。
问题：拖动效果失效，滚动条效果在不同浏览器下表现不一致。
解决办法：彻底放弃thickbox,改用fancybox。
关于 fancybox
官方网站：http://fancybox.net/
下载地址：http://fancybox.googlecode.com/files/jquery.fancybox-1.3.1.zip
使用方法：http://fancybox.net/howto
]]></description>
			<content:encoded><![CDATA[<p>仿iGoogle的拖动及排序效果</p>
<p>可以参见：http://net.tutsplus.com/tutorials/javascript-ajax/inettuts/</p>
<p>有詳細的说明，并有Demo可以在线预览，同时还提供了下载。<br />
在使用的过程中，我遇到一些问题，花了好长时间才解决，在此记下来。</p>
<p>1. js版本问题<br />
下载Demo后，发现它用到的jQuery版本是jquery-1.2.6.min.js。但我们项目中用到的jQuery大都使用了更高的版本，比如1.3.2或是，1.4.2。<br />
如果替换掉Demo中的jQuery，会发现拖动和排序效果失效，但其它效果(编辑，删除)还起作用。上网查了一番，终于找到一解决办法: 在 inettuts.js 中找到 var notSortable = &#8221;;  改成 var notSortable = null; 就可以了。</p>
<p>2. 和jScrollPane的css冲突问题<br />
jScrollPane 是基于jQuery的滚动条效果，可以通过svn更新到本地，(svn 地址： http://jscrollpane.googlecode.com/svn/trunk/ ) 里面包含有Demo可供做测试。</p>
<p>情景再现：我有左右两个列表，左侧使用了jScrollPane。当把左侧的项目拖动到右侧时，要拖动的项总是被遮住；而从右侧拖回左侧则正常。我起初以为是z-index的设置有问题，修改z-index后，问题依然存在。然后，我用jQueryUI中的一些函数设置z-index也没起作用。但是去掉左侧列表的jScrollPane效果后，一切正常。</p>
<p>后来发现是css的原因，我们只需要修改 jScrollPane.css 中 .jScrollPaneContainer， 把其中的 overflow: hidden; 改成 overflow: visible; 如果其它页面中也用到了同样的css，为不影响其它页面，可以仅在当前页修改css.</p>
<p>3. thickbox和这两个js都冲突</p>
<p>情景再现：我在A页面中用js做了拖动，排序及滚动条效果，也就是用到了上面提到的两个js。在B页面使用thickbox弹出A页面。<br />
问题：拖动效果失效，滚动条效果在不同浏览器下表现不一致。</p>
<p>解决办法：彻底放弃thickbox,改用fancybox。</p>
<p>关于 fancybox<br />
官方网站：http://fancybox.net/<br />
下载地址：http://fancybox.googlecode.com/files/jquery.fancybox-1.3.1.zip<br />
使用方法：http://fancybox.net/howto</p>
]]></content:encoded>
			<wfw:commentRss>http://www.learningjquery.org/index.php/imitation-and-ranked-by-igoogleu002639s-drag-luandun/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>phpmailer发送邮件</title>
		<link>http://www.learningjquery.org/index.php/phpmailer-to-send-mail/</link>
		<comments>http://www.learningjquery.org/index.php/phpmailer-to-send-mail/#comments</comments>
		<pubDate>Fri, 16 Jul 2010 10:04:09 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[jQuery]]></category>
		<category><![CDATA[mail]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[phpmailer]]></category>
		<category><![CDATA[发送邮件]]></category>

		<guid isPermaLink="false">http://www.learningjquery.org/?p=222</guid>
		<description><![CDATA[PHPMailer是一个免费，开源且功能强大的php发送邮件类,可以设定发送邮件地址、回复地址、邮件主题、富文本内容,上传附件等。
下载地址：http://sourceforge.net/project/showfiles.php?group_id=26031&#038;package_id=252700
下面我们用一个实例来介绍它的用法。
测试环境：
Ubuntu 9.10
Postfix 2.6.5
PHP 5.2.10

&#60;?php
require_once(&#34;class.phpmailer.php&#34;);

$mail = new PHPMailer();

// 默认编码为 iso-8859-1，当邮件中包含中文字符时，会出现乱码，所以我们改成UTF8
$mail-&#62;CharSet = 'UTF8'; 

// 设置PHPMailer是否使用 SMTP，如果设置了该项，其他相关项也需要设置
$mail-&#62;IsSMTP();

// SMTP服务器地址，也可以使用第三方提供的免费SMTP服务器，如新浪免费邮箱发信(smtp)服务器的地址为：smtp.sina.com
$mail-&#62;Host = 'localhost';

// 设置是否启用SMTP认证，当为true时有时会出错，所以这里我们设置为false
$mail-&#62;SMTPAuth = false;

// SMTP用户名，如果使用linux下的sendmail或postfix等邮件服务器, 此处留空；如果使用第三方的SMTP服务器，要填写相应用户名，也就是你的邮箱地址
$mail-&#62;Username = '';

// SMTP密码，基本同上
$mail-&#62;Password = ''; 

// 设置邮件正文的格式，默认为Html格式，当为false时，使用文本格式
$mail-&#62;IsHTML(true);

// 邮件正文
$mail-&#62;Body = 'The Mail Contents';

// 当用户查看邮件的设备不支持HTML时，可以在这里输入纯文本的内容
$mail-&#62;AltBody = &#34;This is the body in plain text for non-HTML mail clients&#34;; 

// 发件人地址
$mail-&#62;From = 'example@example.com'; 

// 发件人姓名
$mail-&#62;FromName = 'Ben';

// [...]]]></description>
			<content:encoded><![CDATA[<p>PHPMailer是一个免费，开源且功能强大的php发送邮件类,可以设定发送邮件地址、回复地址、邮件主题、富文本内容,上传附件等。</p>
<p>下载地址：http://sourceforge.net/project/showfiles.php?group_id=26031&#038;package_id=252700</p>
<p>下面我们用一个实例来介绍它的用法。</p>
<p>测试环境：<br />
Ubuntu 9.10<br />
Postfix 2.6.5<br />
PHP 5.2.10</p>
<pre class="brush: php;">
&lt;?php
require_once(&quot;class.phpmailer.php&quot;);

$mail = new PHPMailer();

// 默认编码为 iso-8859-1，当邮件中包含中文字符时，会出现乱码，所以我们改成UTF8
$mail-&gt;CharSet = 'UTF8'; 

// 设置PHPMailer是否使用 SMTP，如果设置了该项，其他相关项也需要设置
$mail-&gt;IsSMTP();

// SMTP服务器地址，也可以使用第三方提供的免费SMTP服务器，如新浪免费邮箱发信(smtp)服务器的地址为：smtp.sina.com
$mail-&gt;Host = 'localhost';

// 设置是否启用SMTP认证，当为true时有时会出错，所以这里我们设置为false
$mail-&gt;SMTPAuth = false;

// SMTP用户名，如果使用linux下的sendmail或postfix等邮件服务器, 此处留空；如果使用第三方的SMTP服务器，要填写相应用户名，也就是你的邮箱地址
$mail-&gt;Username = '';

// SMTP密码，基本同上
$mail-&gt;Password = ''; 

// 设置邮件正文的格式，默认为Html格式，当为false时，使用文本格式
$mail-&gt;IsHTML(true);

// 邮件正文
$mail-&gt;Body = 'The Mail Contents';

// 当用户查看邮件的设备不支持HTML时，可以在这里输入纯文本的内容
$mail-&gt;AltBody = &quot;This is the body in plain text for non-HTML mail clients&quot;; 

// 发件人地址
$mail-&gt;From = 'example@example.com'; 

// 发件人姓名
$mail-&gt;FromName = 'Ben';

// 也可以这样设置发件人的址址及姓名

$mail-&gt;SetFrom('example@example.com', 'Ben');

// 添加回复地址，姓名
$mail-&gt;AddReplyTo(&quot;example@example.com&quot;,&quot;Reply Name&quot;);

// 添加抄送地址，貌似只能在win32平台使用，未做测试
$mail-&gt;AddCC($address, $name = &quot;&quot;);

// 添加密送地址，貌似只能在win32平台使用，未做测试
$msil-&gt;AddBCC($address, $name = &quot;&quot;);

$mail-&gt;Subject = 'Test'; // 邮件主题

// AddAddress($address, $name = &quot;&quot;), 添加一个收件人地址，收件人姓名默认为空
$mail-&gt;AddAddress('example@example.com');

// 添加一个附件
$mail-&gt;AddAttachment(&quot;doc/learningjquery.pdf&quot;);

// 清除所有收件人地址,当给多人发送邮件时，此方法尤其有用
$mail-&gt;ClearAddresses();

// Send()方法：创建信息和发送邮件,如果发送失败返回false,使用下面的ErrorInfo属性可以显示错误描述,发送成功返回true
if(!$mail-&gt;Send())
{
	echo &quot;Mailer Error: &quot; . $mail-&gt;ErrorInfo;
	exit;
}

echo 'Send Successful.';
?&gt;
</pre>
<p>PHPMailer的方法请参见： http://phpmailer.worxware.com/index.php?pg=methods<br />
PHPMailer的属性请参见： http://phpmailer.worxware.com/index.php?pg=properties</p>
]]></content:encoded>
			<wfw:commentRss>http://www.learningjquery.org/index.php/phpmailer-to-send-mail/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>玉渊潭樱花节</title>
		<link>http://www.learningjquery.org/index.php/yuyuantan-cherry-blossom-festival/</link>
		<comments>http://www.learningjquery.org/index.php/yuyuantan-cherry-blossom-festival/#comments</comments>
		<pubDate>Wed, 21 Apr 2010 15:17:28 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://www.learningjquery.org/?p=182</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<div id="attachment_172" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.learningjquery.cn/wp-content/2010/04/1.jpg"><img class="aligncenter size-full wp-image-172" title="樱花" src="http://www.learningjquery.cn/wp-content/2010/04/1.jpg" alt="樱花" width="600" height="450" /></a><p class="wp-caption-text">樱花</p></div>
<div id="attachment_174" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.learningjquery.cn/wp-content/2010/04/2.jpg"><img class="aligncenter size-full wp-image-174" title="樱花近景" src="http://www.learningjquery.cn/wp-content/2010/04/2.jpg" alt="樱花近景" width="600" height="450" /></a><p class="wp-caption-text">樱花近景</p></div>
<div id="attachment_175" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.learningjquery.cn/wp-content/2010/04/2.jpg"></a><a href="http://www.learningjquery.cn/wp-content/2010/04/3.jpg"><img class="aligncenter size-full wp-image-175" title="地图" src="http://www.learningjquery.cn/wp-content/2010/04/3.jpg" alt="地图" width="600" height="450" /></a><p class="wp-caption-text">地图</p></div>
<div id="attachment_176" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.learningjquery.cn/wp-content/2010/04/4.jpg"><img class="size-full wp-image-176" title="鸟窝" src="http://www.learningjquery.cn/wp-content/2010/04/4.jpg" alt="鸟窝" width="600" height="450" /></a><p class="wp-caption-text">鸟窝</p></div>
<div id="attachment_177" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.learningjquery.cn/wp-content/2010/04/5.jpg"><img class="size-full wp-image-177" title="手印" src="http://www.learningjquery.cn/wp-content/2010/04/5.jpg" alt="手印" width="600" height="450" /></a><p class="wp-caption-text">手印</p></div>
<div id="attachment_178" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.learningjquery.cn/wp-content/2010/04/6.jpg"><img class="size-full wp-image-178" title="垂柳" src="http://www.learningjquery.cn/wp-content/2010/04/6.jpg" alt="垂柳" width="600" height="450" /></a><p class="wp-caption-text">垂柳</p></div>
<div id="attachment_173" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.learningjquery.cn/wp-content/2010/04/7.jpg"><img class="size-full wp-image-173" title="一树的樱花" src="http://www.learningjquery.cn/wp-content/2010/04/7.jpg" alt="一树的樱花" width="600" height="450" /></a><p class="wp-caption-text">一树的樱花</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.learningjquery.org/index.php/yuyuantan-cherry-blossom-festival/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>10 jQuery Transition Effects: Moving Elements with Style</title>
		<link>http://www.learningjquery.org/index.php/10-jquery-transition-effects-moving-elements-with-style/</link>
		<comments>http://www.learningjquery.org/index.php/10-jquery-transition-effects-moving-elements-with-style/#comments</comments>
		<pubDate>Wed, 03 Mar 2010 14:12:55 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[jQuery]]></category>
		<category><![CDATA[jQuery Transition Effects]]></category>

		<guid isPermaLink="false">http://www.learningjquery.org/?p=169</guid>
		<description><![CDATA[1. Fluid Navigation – How to create an informative menu-bar with jQuery &#38; CSS
Learn how to create a menu that appears like a standard menu bar in it’s default state, but which on rollover pulls down an information area that covers both the original menubar item and has an expanded section containing the text we [...]]]></description>
			<content:encoded><![CDATA[<h3>1. Fluid Navigation – How to create an informative menu-bar with jQuery &amp; CSS</h3>
<p>Learn how to create a menu that appears like a standard menu bar in it’s default state, but which on rollover pulls down an information area that covers both the original menubar item and has an expanded section containing the text we want to display.</p>
<p><a href="http://addyosmani.com/blog/fluid-navigation-how-to-create-an-informative-menu-bar-with-jquery-in-just-a-few-minutes"><img src="http://devsnippets.com/img/jquery-magic/jquery-01.jpg" alt="Fluid Navigation – How to create an informative menu-bar with jQuery &amp; CSS" /></a></p>
<h3>2. Move Elements with Style</h3>
<p>Roundabout is a jQuery plugin that converts a structure of static HTML elements into a highly customizable turntable-like interactive area. In its simplest configuration, Roundabout works with ordered- and unordered-lists, however after some quick configuration, Roundabout can work with an set of nested elements.</p>
<p><a href="http://fredhq.com/projects/roundabout/"><img src="http://devsnippets.com/img/jquery-magic/jquery-02.jpg" alt="Move Elements with Style" /></a></p>
<h3>3. Automatic Image Slider w/ CSS &amp; jQuery</h3>
<p>A simple image slider using HTML/CSS/Javascript. The html based image slider will have its benefits with SEO and will also degrade gracefully for those w/out js.</p>
<p><a href="http://www.sohtanaka.com/web-design/automatic-image-slider-w-css-jquery/"><img src="http://devsnippets.com/img/jquery-magic/jquery-03.jpg" alt="Automatic Image Slider w/ CSS &amp; jQuery" /></a></p>
<h3>4. jQuery Quicksand Plugin</h3>
<p>With Quicksand you can reorder and filter items with a nice shuffling animation. At the very basic level, Quicksand replaces one collection of items with another. All you need to do is provide those two sets of items. You can do it in a couple of ways:</p>
<ul>
<li> 1. Use plain HTML, like an unordered list.</li>
<li>2. Download data by an Ajax call</li>
<li>3. Transform HTML items by JavaScript (for example, sort them differently)</li>
</ul>
<p><a href="http://razorjack.net/quicksand/"><img src="http://devsnippets.com/img/jquery-magic/jquery-04.jpg" alt="jQuery Quicksand Plugin" /></a></p>
<h3>5. jQuery Magic Line Sliding Style Navigation</h3>
<p>The idea is to have a highlight of some kind (a background or an underline) follow you around as you mouse over the different links in the navigation. This will happen with jQuery and it’s animation abilities. As such, the “magic line” will only be appended via JavaScript. Once added to the list and styled, as you mouse over the different links, it figures out the left positioning and the width and animates to match.</p>
<p><a href="http://css-tricks.com/jquery-magicline-navigation/"><img src="http://devsnippets.com/img/jquery-magic/jquery-05.jpg" alt="jQuery Magic Line Sliding Style Navigation" /></a></p>
<h3>6. Text with Moving Backgrounds</h3>
<p>The idea is to create a container which has a moving background, but only a set of letters will be visible of the background. It will be as if there are holes in your container.</p>
<p>Normally you would create a PNG file containing anti-aliased letters and place it inside some container on top of a background. Here what you need to do is place a full image over a background, covering parts that shouldn’t be seen. Just like a mask!</p>
<p><a href="http://www.gayadesign.com/diy/text-with-moving-backgrounds-with-jquery/"><img src="http://devsnippets.com/img/jquery-magic/jquery-06.jpg" alt="Text with Moving Backgrounds" /></a></p>
<h3>7. jDiv: A jQuery navigation menu alternative</h3>
<p>A drop-down menu that displayed any content you need. Specifically a combination of images and lists, without being limited to only an unordered list. The advantages:</p>
<ul>
<li>More flexibility in design that your usual UL style;</li>
<li>The use of the H4 tag <em>and</em> a UL for the hidden content adds some potential SEO but be sure that your header tag choice is in keeping with your copy’s layout;</li>
<li>As long as your first-level nav item is linked to a page, you still retain accessibility with JS disabled.</li>
</ul>
<p><a href="http://www.skyrocketlabs.com/articles/jdiv-a-jquery-navigation-menu-alternative.php"><img src="http://devsnippets.com/img/jquery-magic/jquery-07.jpg" alt="jDiv: A jQuery navigation menu alternative" /></a></p>
<h3>8. Halftone Navigation Menu With jQuery &amp; CSS3</h3>
<p>A CSS3 &amp; jQuery halftone-style navigation menu, which will allow you to display animated halftone-style shapes in accordance with the navigation links, and will provide a simple editor for creating additional shapes as well.</p>
<p><a href="http://tutorialzine.com/2010/01/halftone-navigation-menu-jquery-css/"><img src="http://devsnippets.com/img/jquery-magic/jquery-08.jpg" alt="Halftone Navigation Menu With jQuery &amp; CSS3" /></a></p>
<h3>9. Animate Panning Slideshow with jQuery</h3>
<p>Highly visual websites rely on the ability to showcase imagery automatically. Whether it be a professional photographer or zoo, slideshows pop up so frequently because they work well. In this tutorial we’ll have a slideshow that transitions by changing the visible window.</p>
<p><a href="http://buildinternet.com/2010/02/animate-panning-slideshow-with-jquery/"><img src="http://devsnippets.com/img/jquery-magic/jquery-09.jpg" alt="Animate Panning Slideshow with jQuery" /></a></p>
<h3>10. SlideDeck</h3>
<p>SlideDeck is a new way to display content on websites, mobile phones and kiosks. It delivers a better user experience by removing the information overload and providing a fun, quick and beautiful way to interact with digital devices.</p>
<p><a href="http://www.slidedeck.com/"><img src="http://devsnippets.com/img/jquery-magic/jquery-10.jpg" alt="SlideDeck" /></a></p>
<h4><strong><br />
</strong><a href="http://devsnippets.com/"><strong></strong></a></h4>
]]></content:encoded>
			<wfw:commentRss>http://www.learningjquery.org/index.php/10-jquery-transition-effects-moving-elements-with-style/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jQuery1.4发布</title>
		<link>http://www.learningjquery.org/index.php/jquery1-4-release/</link>
		<comments>http://www.learningjquery.org/index.php/jquery1-4-release/#comments</comments>
		<pubDate>Fri, 15 Jan 2010 16:45:36 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[jQuery]]></category>
		<category><![CDATA[jQuery1.4]]></category>
		<category><![CDATA[下载]]></category>
		<category><![CDATA[特性]]></category>

		<guid isPermaLink="false">http://www.learningjquery.org/?p=146</guid>
		<description><![CDATA[在庆祝jQuery4周岁生日之际，jQuery开发团队隆重推出其最新版的JavaScript框架jQuery1.4。
下载链接
* jQuery Minified (23kb Gzipped)
* jQuery Regular (154kb)
当然，我们也可以直接使用来自Google服务器上托管的版本：http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js ，这使得您可以快速的加载jQuery文件。
关于此次版本更新的详细信息可参见jQuery官方文档。
]]></description>
			<content:encoded><![CDATA[<p>在庆祝jQuery4周岁生日之际，jQuery开发团队隆重推出其最新版的JavaScript框架jQuery1.4。</p>
<p><strong>下载链接</strong></p>
<p>* <a title="jQuery Minified" href="http://code.jquery.com/jquery-1.4.min.js">jQuery Minified (23kb Gzipped)</a></p>
<p>* <a title="jQuery Regular" href="http://code.jquery.com/jquery-1.4.js">jQuery Regular (154kb)</a></p>
<p>当然，我们也可以直接使用来自Google服务器上托管的版本：http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js ，这使得您可以快速的加载jQuery文件。</p>
<p>关于此次版本更新的详细信息可参见<a title="jQuery官方文档" href="http://api.jquery.com/category/version/1.4/">jQuery官方文档</a>。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.learningjquery.org/index.php/jquery1-4-release/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>2009 年度最佳 jQuery 插件</title>
		<link>http://www.learningjquery.org/index.php/2009-best-jquery-plug-in/</link>
		<comments>http://www.learningjquery.org/index.php/2009-best-jquery-plug-in/#comments</comments>
		<pubDate>Sat, 12 Dec 2009 15:53:44 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[jQuery 插件]]></category>

		<guid isPermaLink="false">http://www.learningjquery.org/?p=137</guid>
		<description><![CDATA[jQuery 是个宝库，而 jQuery 的插件体系是个取之不竭的宝库，众多开发者在 jQuery 框架下，设计了数不清的插件，jQuery  的特长是网页效果，因此，它的插件库也多与 UI 有关。本文是 webdesignledger.com 网站推选的2009年度最佳 jQuery 插件。]]></description>
			<content:encoded><![CDATA[<p>jQuery 是个宝库，而 jQuery 的插件体系是个取之不竭的宝库，众多开发者在 jQuery 框架下，设计了数不清的插件，jQuery  的特长是网页效果，因此，它的插件库也多与 UI 有关。本文是 <a href="http://www.webdesignledger.com/">webdesignledger.com</a> 网站推选的2009年度最佳 jQuery 插件。</p>
<h3>拉洋片</h3>
<p>在一个固定区域，循环显示几段内容，这种方式很像旧时的拉洋片，2009年，这种 Web 效果大行其道，jQuery 有大量与此有关的插件，以下插件无疑是最佳的。</p>
<h3><a href="http://css-tricks.com/anythingslider-jquery-plugin/" target="_blank">AnythingSlider</a></h3>
<p><a href="http://css-tricks.com/anythingslider-jquery-plugin/" target="_blank"><img style="border: 1px solid #c0c0c0;" src="http://webdesignledger.com/wp-content/uploads/2009/12/jquery_2009_1.jpg" alt="jquery plugins" /></a></p>
<p>由 CSS-Tricks 的 Chris Coyier 设计，功能齐全，应用十分广泛。</p>
<h3><a href="http://cssglobe.com/post/5780/easy-slider-17-numeric-navigation-jquery-slider" target="_blank">Easy Slider</a></h3>
<p><a href="http://cssglobe.com/post/5780/easy-slider-17-numeric-navigation-jquery-slider" target="_blank"><img style="border: 1px solid #c0c0c0;" src="http://webdesignledger.com/wp-content/uploads/2009/12/jquery_2009_3.jpg" alt="jquery plugins" /></a></p>
<p>这个 Content Slider 插件既包含传统“前后”导航模式，又包含页码式导航。</p>
<h3><a href="http://www.ndoherty.biz/tag/coda-slider/" target="_blank">Coda-Slider 2.0</a></h3>
<p><a href="http://www.ndoherty.biz/tag/coda-slider/" target="_blank"><img style="border: 1px solid #c0c0c0;" src="http://webdesignledger.com/wp-content/uploads/2009/12/jquery_2009_7.jpg" alt="jquery plugins" /></a></p>
<p>Coda-Slider 2.0 是对 Panic Coda 网站上对应效果的模仿。</p>
<h3>图片库</h3>
<p>那些需要借助 Flash 实现滑动与渐入渐出效果图片库的日子已经去过，借助 jQuery，这种效果已经可以在本地实现，以下是本年度备受欢迎的几个 jQuery 图片库插件。</p>
<h3><a href="http://devkick.com/lab/galleria/" target="_blank">Galleria</a></h3>
<p><a href="http://devkick.com/lab/galleria/" target="_blank"><img src="http://webdesignledger.com/wp-content/uploads/2009/12/jquery_2009_4.jpg" alt="jquery plugins" /></a></p>
<p>这是一个基于 jQuery 的图片库，可以逐个加载图片并显示缩略图。</p>
<h3><a href="http://www.catchmyfame.com/2009/08/13/jquery-panel-gallery-1-1-plugin-released/" target="_blank">jQuery Panel Gallery</a></h3>
<p><a href="http://www.catchmyfame.com/2009/08/13/jquery-panel-gallery-1-1-plugin-released/" target="_blank"><img src="http://webdesignledger.com/wp-content/uploads/2009/12/jquery_2009_5.jpg" alt="jquery plugins" /></a></p>
<p>一个可以高度定义的图片库插件，无需对单个图片进行任何处理，这个插件会帮你完成一切。</p>
<h3><a href="http://www.gcmingati.net/wordpress/wp-content/lab/jquery/imagestrip/imageslide-plugin.html" target="_blank">slideViewer</a></h3>
<p><a href="http://www.gcmingati.net/wordpress/wp-content/lab/jquery/imagestrip/imageslide-plugin.html" target="_blank"><img src="http://webdesignledger.com/wp-content/uploads/2009/12/jquery_2009_10.jpg" alt="jquery plugins" /></a></p>
<p>slideViewer 会检查你的图片列表中的编号，动态创建各个图片的页码浏览导航。</p>
<h3><a href="http://www.buildinternet.com/project/supersized/" target="_blank">Supersized</a></h3>
<p><a href="http://www.buildinternet.com/project/supersized/" target="_blank"><img src="http://webdesignledger.com/wp-content/uploads/2009/12/jquery_2009_6.jpg" alt="jquery plugins" /></a></p>
<p>一个令人惊讶的图片循环展示插件，包含各种变换效果和预加载选项，会对图片自动改变尺寸以适应浏览器窗口。</p>
<h3>导航</h3>
<p>我们相信，作为网站的导航系统，应该越简单，越易用越好，然而，假如你确实希望实现一些更炫的效果，jQuery 就是最好的选项，以下插件是09年最好的 jQuery  导航插件。</p>
<h3><a href="http://pupunzi.open-lab.com/mb-jquery-components/mb-_menu/" target="_blank">jquery mb.menu</a></h3>
<p><a href="http://pupunzi.open-lab.com/mb-jquery-components/mb-_menu/" target="_blank"><img style="border: 1px solid #c0c0c0;" src="http://webdesignledger.com/wp-content/uploads/2009/12/jquery_2009_8.jpg" alt="jquery plugins" /></a></p>
<h3><a href="http://www.queness.com/post/256/horizontal-scroll-menu-with-jquery-tutorial" target="_blank">Horizontal Scroll Menu with jQuery </a></h3>
<p><a href="http://www.queness.com/post/256/horizontal-scroll-menu-with-jquery-tutorial" target="_blank"><img style="border: 1px solid #c0c0c0;" src="http://webdesignledger.com/wp-content/uploads/2009/12/jquery_2009_16.jpg" alt="jquery plugins" /></a></p>
<h3><a href="http://www.newmediacampaigns.com/page/autosprites-jquery-menu-plugin" target="_blank">AutoSprites</a></h3>
<p><a href="http://www.newmediacampaigns.com/page/autosprites-jquery-menu-plugin" target="_blank"><img style="border: 1px solid #c0c0c0;" src="http://webdesignledger.com/wp-content/uploads/2009/12/jquery_2009_9.jpg" alt="jquery plugins" /></a></p>
<h3>表单和表格</h3>
<p>在 Web 设计中，表单和表格都是不是很讨人喜欢的东西，但你不得不面对，本年度出现几个不错的 jQuery  插件帮你完成这些任务。</p>
<h3><a href="http://www.unwrongest.com/projects/password-strength/" target="_blank">Password Strength</a></h3>
<p><a href="http://www.unwrongest.com/projects/password-strength/" target="_blank"><img src="http://webdesignledger.com/wp-content/uploads/2009/12/jquery_2009_12.jpg" alt="jquery plugins" /></a></p>
<p>这个插件帮你评估用户输入的密码是否足够强壮。</p>
<h3><a href="http://www.webdesignbeach.com/beachbar/ajax-fancy-captcha-jquery-plugin" target="_blank">Ajax Fancy Capcha</a></h3>
<p><a href="http://www.webdesignbeach.com/beachbar/ajax-fancy-captcha-jquery-plugin" target="_blank"><img style="border: 1px solid #c0c0c0;" src="http://webdesignledger.com/wp-content/uploads/2009/12/jquery_2009_13.jpg" alt="jquery plugins" /></a></p>
<p>顾名思义，一个支持 Ajax 又很炫的 jQuery Captcha 插件，它使用了很人性化的验证机制。</p>
<h3><a href="http://www.chromaloop.com/posts/chromatable-jquery-plugin" target="_blank">Chromatable</a></h3>
<p><a href="http://www.chromaloop.com/posts/chromatable-jquery-plugin" target="_blank"><img style="border: 1px solid #c0c0c0;" src="http://webdesignledger.com/wp-content/uploads/2009/11/jquery_tables_10.jpg" alt="jquery tables" /></a></p>
<p>这个插件可以帮助你在表格上实现滚动条。</p>
<h3><a href="http://www.dfc-e.com/metiers/multimedia/opensource/jqtransform/" target="_blank">jqTransform</a></h3>
<p><a href="http://www.dfc-e.com/metiers/multimedia/opensource/jqtransform/" target="_blank"><img style="border: 1px solid #c0c0c0;" src="http://webdesignledger.com/wp-content/uploads/2009/12/jquery_2009_14.jpg" alt="jquery plugins" /></a></p>
<p>一个式样插件，帮助你对表单中的控件进行式样控制。</p>
<h3><a href="http://www.uploadify.com/" target="_blank">Uploadify</a></h3>
<p><a href="http://www.uploadify.com/" target="_blank"><img style="border: 1px solid #c0c0c0;" src="http://webdesignledger.com/wp-content/uploads/2009/12/jquery_2009_15.jpg" alt="jquery plugins" /></a></p>
<p>实现多个文件同时上传。</p>
<h3><a href="http://www.jankoatwarpspeed.com/post/2009/07/20/Expand-table-rows-with-jQuery-jExpand-plugin.aspx" target="_blank">jExpand </a></h3>
<p><a href="http://www.jankoatwarpspeed.com/post/2009/07/20/Expand-table-rows-with-jQuery-jExpand-plugin.aspx" target="_blank"><img style="border: 1px solid #c0c0c0;" src="http://webdesignledger.com/wp-content/uploads/2009/11/jquery_tables_1.jpg" alt="jquery tables" /></a></p>
<p>一个很轻量的 jQuery 插件，使你的表格可以扩展，在一些商业应用中，可以让表格更容易组织其中的内容。</p>
<p>本文来源：<a href="http://webdesignledger.com/resources/the-best-jquery-plugins-of-2009">http://webdesignledger.com/resources/the-best-jquery-plugins-of-2009</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.learningjquery.org/index.php/2009-best-jquery-plug-in/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>10 Best Javascript Drawing and Canvas Libraries</title>
		<link>http://www.learningjquery.org/index.php/10-best-javascript-drawing-and-canvas-libraries/</link>
		<comments>http://www.learningjquery.org/index.php/10-best-javascript-drawing-and-canvas-libraries/#comments</comments>
		<pubDate>Fri, 16 Oct 2009 01:11:58 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://www.learningjquery.org/?p=121</guid>
		<description><![CDATA[
Develop Rich interactive internet applications with these javascript drawing and canvas libraries. JavaScript developers, web developers and webmasters can take advantage of these libraries to add graphics drawing functionality to their web applications or websites.
Draw2D Javascript Drawing Library
Draw2D is the graph component of the Open-jACOB web based workflow editor. The purpose of this experiment is [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.open-libraries.com/imageredirect/javascript/im.php?imagekey=wpid-10-Best-Javascript-Drawing-and-Canvas-Libraries.png" alt="" /><br />
Develop Rich interactive internet applications with these javascript drawing and canvas libraries. JavaScript developers, web developers and webmasters can take advantage of these libraries to add graphics drawing functionality to their web applications or websites.</p>
<h2><a href="http://javascript.open-libraries.com/utilities/drawing/draw2d-javascript-drawing-library/">Draw2D Javascript Drawing Library</a></h2>
<p>Draw2D is the graph component of the Open-jACOB web based workflow editor. The purpose of this experiment is to see if a Visio-type workflow editor tool could be developed in a web browser. It demonstrates that it can be done.<br />
<img src="http://www.open-libraries.com/imageredirect/javascript/im.php?imagekey=wpid-Draw2D-Javascript-Drawing-Library.png" alt="" /></p>
<h2><a href="http://javascript.open-libraries.com/utilities/drawing/javascript-vector-draw-library/">JavaScript Vector-Draw Library</a></h2>
<p>How many times you wished if you could only draw an arrow on your web page? Or few lines here and there? Unfortunately, HTML offers nothing in this department, and using images takes bandwidth and slows down the loading of your pages<br />
<img src="http://www.open-libraries.com/imageredirect/javascript/im.php?imagekey=wpid-JavaScript-Vector-Draw-Library.png" alt="" /></p>
<h2><a href="http://javascript.open-libraries.com/utilities/drawing/jsdraw2d-2d-graphics-library-for-javascript/">jsDraw2D : 2D Graphics Library for JavaScript</a></h2>
<p>This is a pure JavaScript library to draw 2D graphics on web pages inside web browser without using SVG or VML. JavaScript developers, web developers and webmasters can take advantage of the library to add graphics drawing functionality to their web applications or websites using the library. The library is entirely written in JavaScript and does not need any plug-in or additional software to run/execute. The JavaScript source code of the library is open and free under a LGPL License.<br />
<img src="http://www.open-libraries.com/imageredirect/javascript/im.php?imagekey=wpid-jsDraw2D-2D-Graphics-Library-for-JavaScript.png" alt="" /></p>
<h2><a href="http://javascript.open-libraries.com/utilities/drawing/canvasgraph-js-graphing-in-javascript/">CanvasGraph.js : Graphing in Javascript</a></h2>
<p>Canvas Graph is a small simple javascript library that allows you to conveniently plot simple line, bar and pie charts using the new HTML Canvas Tag.<br />
<img src="http://www.open-libraries.com/imageredirect/javascript/im.php?imagekey=null" alt="" /></p>
<h2><a href="http://javascript.open-libraries.com/utilities/drawing/plotkit-javascript-chart-plotting/">PlotKit – Javascript Chart Plotting</a></h2>
<p>PlotKit is a Chart and Graph Plotting Library for Javascript. It has support for HTML Canvas and also SVG via Adobe SVG Viewer and native browser support.<br />
<img src="http://www.open-libraries.com/imageredirect/javascript/im.php?imagekey=wpid-PlotKit-Javascript-Chart-Plotting.png" alt="" /></p>
<h2><a href="http://javascript.open-libraries.com/utilities/drawing/raphael-javascript-drawing-library/">Raphael: javascript drawing library</a></h2>
<p>Raphael is a very slick looking JavaScript library for drawing and animating vector graphics with JavaScript. The API is simple and well thought-out and it supports all major browsers, including Internet Explorer 6.<br />
<img src="http://www.open-libraries.com/imageredirect/javascript/im.php?imagekey=wpid-Raphael-javascript-drawing-library.png" alt="" /></p>
<h2><a href="http://javascript.open-libraries.com/utilities/drawing/drawing-lines-in-mozilla-based-browsers-and-the-internet-explorer/">Drawing lines in Mozilla based browsers and the Internet Explorer</a></h2>
<p>In this article, I want to explain and deduce the line drawing algorithm by Bresenham. Afterwards, I will show an optimized version which can be used to draw lines in Gecko based browsers like Mozilla or Firefox and Microsoft Internet Explorer. As you know, HTML itself is not able to describe lines. Therefore, there is no built-in features in the above-mentioned browsers for drawing lines. By implementing the Bresenham algorithm with JavaScript while applying some tricks, we will be able to draw<br />
<img src="http://www.open-libraries.com/imageredirect/javascript/im.php?imagekey=wpid-Drawing-lines-in-Mozilla-based-browsers-and-the-Internet-Explorer.png" alt="" /></p>
<h2><a href="http://javascript.open-libraries.com/utilities/drawing/flotr-javascript-plotting-library/">Flotr Javascript Plotting Library</a></h2>
<p>Flotr is a javascript plotting library based on the Prototype Javascript Framework version 1.6.0.2 at the moment and inspired by Flot written by Ole Laursen.<br />
<img src="http://www.open-libraries.com/imageredirect/javascript/im.php?imagekey=wpid-Flotr-Javascript-Plotting-Library.png" alt="" /></p>
<h2><a href="http://javascript.open-libraries.com/utilities/drawing/dhtml-javascript-vector-graphics-library/">DHTML, JavaScript Vector Graphics Library</a></h2>
<p>This JavaScript VectorGraphics library provides graphics capabilities for JavaScript: functions to draw circles, ellipses ovals, oblique lines, polylines and polygons for instance triangles, rectangles dynamically into a webpage. Usage of this Vector Graphics library should be easy even if you do not have JavaScript experience.<br />
<img src="http://www.open-libraries.com/imageredirect/javascript/im.php?imagekey=wpid-DHTML-JavaScript-Vector-Graphics-Library.png" alt="" /></p>
<h2><a href="http://javascript.open-libraries.com/utilities/drawing/canviz-javascript-library/">canviz JavaScript library</a></h2>
<p>Canviz is a JavaScript library for drawing Graphviz graphs to a web browser canvas. More technically, Canviz is a JavaScript xdot renderer. It works in most modern browsers.<br />
<img src="http://www.open-libraries.com/imageredirect/javascript/im.php?imagekey=wpid-canviz-JavaScript-library.png" alt="" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.learningjquery.org/index.php/10-best-javascript-drawing-and-canvas-libraries/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jTemplates &#8211; jQuery的模板引擎</title>
		<link>http://www.learningjquery.org/index.php/jtemplates-jquery-template-engine/</link>
		<comments>http://www.learningjquery.org/index.php/jtemplates-jquery-template-engine/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 01:17:35 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[jQuery 插件]]></category>

		<guid isPermaLink="false">http://www.learningjquery.org/?p=115</guid>
		<description><![CDATA[jTemplates是一个基于jQuery的JavaScript模板，它作为jQuery的扩展插件发布。
它的语法很简单，直观。它支持的参数，包括，if/else，loops，JavaScript函数和其他许多好的和有用的功能。
点此查看更多详细说明。
]]></description>
			<content:encoded><![CDATA[<p>jTemplates是一个基于jQuery的JavaScript模板，它作为jQuery的扩展插件发布。<br />
它的语法很简单，直观。它支持的参数，包括，if/else，loops，JavaScript函数和其他许多好的和有用的功能。</p>
<p><a class="alignleft" title="jTemplates" href="http://jtemplates.tpython.com/" target="_blank">点此查看更多详细说明</a>。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.learningjquery.org/index.php/jtemplates-jquery-template-engine/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jQuery Tools：我们期待已久的用户界面插件</title>
		<link>http://www.learningjquery.org/index.php/jquery-tools-the-long-awaited-user-interface-plug-in/</link>
		<comments>http://www.learningjquery.org/index.php/jquery-tools-the-long-awaited-user-interface-plug-in/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 05:43:05 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[UI]]></category>
		<category><![CDATA[jQuery 插件]]></category>

		<guid isPermaLink="false">http://www.learningjquery.org/?p=111</guid>
		<description><![CDATA[jQuery Tools 是一套非常优秀的 Web UI 库，包括 Tab 容器，可折叠容器，工具提示，浮动层以及可滚动容器等等，可以为你的站点带来非同寻常的桌面般体验，这套工具的主要作用是显示内容，这是绝多多数站点最需 要的东西。这套令人惊异的 UI 库只有 5.59K 大小，基于 MIT 和 GPL 两种许可模式(原始图文版)。 		       	 		 和别的 Web UI 库不同，别的 UI 库很多是面向行为的，如拖放，滚动，表格排序，可拖放窗口等等，它们更适合于 富 Web 应用，如 Email 客户端，任务管理，图片组织整理等。而 jQuery Tools 主要面向内容展示，因此更适用于单纯的内容型网站。
jQuery Tools 使用也很简便，只需几行调用代码即可，其官方站点包含大量演示和调用代码可以参考。以下是该 UI 库中包含的主要 UI 工具介绍。
jQuery Tools / Overlay
Overlay （浮动层）可以用来浮动在任何 HTML 对象的上方，在现代 Web 设计中，浮动层是一种非常有效的 UI [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://flowplayer.org/tools/">jQuery Tools</a> 是一套非常优秀的 Web UI 库，包括 Tab 容器，可折叠容器，工具提示，浮动层以及可滚动容器等等，可以为你的站点带来非同寻常的桌面般体验，这套工具的主要作用是显示内容，这是绝多多数站点最需 要的东西。这套令人惊异的 UI 库只有 5.59K 大小，基于 MIT 和 GPL 两种许可模式(<a href="http://www.comsharp.com/GetKnowledge/zh-CN/CMS_K846.aspx">原始图文版</a>)。 		       	 		 和别的 Web UI 库不同，别的 UI 库很多是面向行为的，如拖放，滚动，表格排序，可拖放窗口等等，它们更适合于 富 Web 应用，如 Email 客户端，任务管理，图片组织整理等。而 jQuery Tools 主要面向内容展示，因此更适用于单纯的内容型网站。</p>
<p>jQuery Tools 使用也很简便，只需几行调用代码即可，<a href="http://flowplayer.org/tools/demos">其官方站点包含大量演示和调用代码可以参考</a>。以下是该 UI 库中包含的主要 UI 工具介绍。</p>
<p>jQuery Tools / Overlay</p>
<p>Overlay （浮动层）可以用来浮动在任何 HTML 对象的上方，在现代 Web 设计中，浮动层是一种非常有效的 UI 概念，可以用来</p>
<ol>
<li>着重显示你的产品。</li>
<li>显示警示信息。</li>
<li>提示用户输入。</li>
<li>以灯箱风格浏览图片库。</li>
</ol>
<p>jQuery Tools / Overlay 可以很轻松地处理上述各种情形和各种效果。 jQuery Tools / Tooltip</p>
<p>工具提示是 Web 上最实用的工具，Web 默认的提示工具太简陋，jQuery Tools / Tooltip 会以一种非常漂亮的视觉效果显示提示内容。</p>
<p><a href="http://flowplayer.org/tools/demos/tooltip/">jQuery Tools / Tabs </a></p>
<p>Web 上最受欢迎的 UI 部件当属 Tab 容器，如果没有 Tab，我们的很多网页不知要多么混乱，所有用户都熟悉 Tab 这种用户友好的部件，jQuery Tools / Tab 非常好用，甚至可以使用浏览器的前进后退导航按钮在 Tab 间前进或后退。</p>
<p><a href="http://flowplayer.org/tools/demos/tabs/"> jQuery Tools / Scrollable</a></p>
<p>jQuery Tools / Scrollable 可以在网页中实行定制的，局部的滚动，在现代 Web 设计中，这几乎是最受欢迎的一种技术，可以用在下面这些场合：</p>
<ul>
<li>产品目录</li>
<li>滚动新闻</li>
<li>在表单中实现定制选择框</li>
<li>浏览图片库</li>
<li>视频播放列表</li>
<li>各种站点导航</li>
</ul>
<p><a href="http://flowplayer.org/tools/demos/scrollable/">jQuery Tools / Flashembed </a></p>
<p>如今 JavaScript 真是越来越快了，所有浏览器都在 JavaScript 引擎上较量，我们会看到越来越多的基于 JavaScript 的 Web 部件面世，然而至少在当下， Flash 仍有其用武之地，比如播放视频。</p>
<p>jQuery Tools / Flashembed 可以用来在网页中加载 Flash 对象，虽然类似的工具比比皆是，但 Flashembed 绝对是其中最好用的一个。</p>
<p>本文来源：<a href="http://www.noupe.com/jquery/jquery-tools.html">http://www.noupe.com/jquery/jquery-tools.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.learningjquery.org/index.php/jquery-tools-the-long-awaited-user-interface-plug-in/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>5 Lesser Known JavaScript Libraries that Make Web Design Easier</title>
		<link>http://www.learningjquery.org/index.php/5-lesser-known-javascript-libraries-that-make-web-design-easier/</link>
		<comments>http://www.learningjquery.org/index.php/5-lesser-known-javascript-libraries-that-make-web-design-easier/#comments</comments>
		<pubDate>Tue, 29 Sep 2009 00:48:48 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://www.learningjquery.org/?p=108</guid>
		<description><![CDATA[In this round-up we’ll be looking at 5 JavaScript libraries that can really ease the development of modern, attractive web sites. The libraries that we’ll be looking at aren’t libraries in the same sense as something like jQuery or the YUI; they’re much smaller and much more specialized. But they’re the best at what they [...]]]></description>
			<content:encoded><![CDATA[<p>In this round-up we’ll be looking at 5 JavaScript libraries that can really ease the development of modern, attractive web sites. The libraries that we’ll be looking at aren’t libraries in the same sense as something like jQuery or the YUI; they’re much smaller and much more specialized. But they’re the best at what they do and provide unique functionality.</p>
<p><span> </span></p>
<h3>1. Fixing PNGs in IE6 with DD_BelatedPNG</h3>
<ul>
<li>Created by:	Drew Diller</li>
<li>License:	MIT</li>
<li>Usage:		Fixes alpha-transparent PNGs in IE6</li>
<li>Size:		6.86kb (compressed)</li>
<li>Compatibility:	IE6 only</li>
<li><a href="http://nettuts.s3.amazonaws.com/449_javascriptlibraries/examples/ddbelatedExample.html" target="_blank">View Demo</a></li>
<li><a href="http://www.dillerdesign.com/experiment/DD_belatedPNG/" target="_blank">Download</a></li>
</ul>
<p>DD_belatedPNG was created for the single purpose of allowing alpha-transparent PNGs to be used in IE6 without resorting to Microsoft’s proprietary AlphaImageLoader filter. As anyone who’s tried to use PNGs in IE6 before knows, although they can be made to work to a very basic degree, things like repeated background-images are out of the question.</p>
<p>Using the AlphaImageLoader filter only fixes half of the PNG problem in IE6 as it can only be used with background images. To make use of alpha-transparent PNGs on &lt;img&gt; elements, another fix is used, which is typically the HTC fix which relies on a transparent PNG and an HTC behavior file. Additionally, as Firebug and YSlow users will be aware of, Microsoft’s AlphaImageLoader is slow; one of YSlow’s guidelines is to avoid the filter at all costs.</p>
<p>DD_belatedPNG uses Microsoft’s implementation of VML to replace PNGs with VML elements, which do support alpha-transparency. It can be used with both full &lt;img&gt; elements and CSS background-images. When background-images are replaced, common features such as background-repeat and :hover states can also be used so this library solves all of the common PNG problems in IE6.</p>
<h3>Usage</h3>
<p>Using DD_BelatedPNG is exceptionally easy; it only needs to be used with IE6, so the main script can be included in the page using a conditional comment:</p>
<pre>&lt;!--[if IE 6]&gt; &lt;script src="DD_belatedPNG.js"&gt;&lt;/script&gt;
&lt;![endif]--&gt;</pre>
<p>The library has a single method, fix, which is used to supply simple CSS selectors that are targeted by the library, any &lt;img&gt; element that has a PNG src attribute, or any element using a PNG CSS background with the matching class name will be fixed. This part of the script can go into the conditional comment as well so that only IE6 will need to process these additional rules:</p>
<pre>&lt;script type="text/javascript"&gt;
  DD_belatedPNG.fix(".linkButton");
&lt;/script&gt;</pre>
<p>Fixed PNGs in IE6 will now appear as they should and can be background-positioned and repeated, and also work with :hover states, unlike Microsoft’s proprietary filter. The following image shows a before and after picture of an alpha-transparent background image:</p>
<div><img src="http://nettuts.s3.amazonaws.com/449_javascriptlibraries/images/ddbelated.png" alt="DD_BelatedPNG" /></div>
<h3>2. Use any Font with Cufon</h3>
<ul>
<li>Created by:	Simo Kinnunen</li>
<li>License:	MIT</li>
<li>Usage:		Allows embedding of non-standard fonts without needing flash</li>
<li>Size:		17.8kb (compressed)</li>
<li>Compatibility:	All (all common versions from all common vendors, including IE6)</li>
<li><a href="http://nettuts.s3.amazonaws.com/449_javascriptlibraries/examples/cufonExample.html" target="_blank">View Demo</a></li>
<li><a href="http://cufon.shoqolate.com/js/cufon-yui.js" target="_blank">Download</a></li>
</ul>
<p>Typography is one area of web development that has seen painfully little advancement when compared with other areas of the industry. Web developers have been forced to rely on a small set of ‘web safe’ fonts that are likely to be installed on the majority of their visitor’s computers. Image and flash-based solutions have arisen, both of which have downsides to using.</p>
<p>Cufon offers developers a robust and fast solution, which can be displayed in the browser without requiring third-party plugins using features built in to browsers. Cufon fonts can be used as VML for native IE implementation, or the &lt;canvas&gt; element for other more capable browsers. Awesomely, we can also set different styles of the replaced text, such as its color and size using pure CSS.</p>
<h3>Usage</h3>
<p>This library differs from the others in that a little bit of preparation is required before use; a new font file needs to be generated which can be done easily using the <a href="http://wiki.github.com/sorccu/cufon/usage" target="_blank">cufon website</a>. The will generate an SVG font and save it in a JS file. This file needs to then be linked to any other &lt;script&gt; resource after the cufon core file:</p>
<pre>&lt;script type="text/javascript" src="cufon.js"&gt;&lt;/script&gt;
&lt;script type="text/javascript" src="Breip_500.font.js"&gt;&lt;/script&gt;</pre>
<p>Then it’s just a case of telling Cufon which elements to replace:</p>
<pre>&lt;script type="text/javascript"&gt;
  Cufon.replace('h1.replacedFont');
&lt;/script&gt;</pre>
<p>The API offers other solutions for using multiple fonts on the same page and for improving performance in IE. Although I’ve called this section, “Using any Font”… you should remember that only fonts that are licensed to be embedded should be used. The following screenshot shows a replaced heading:</p>
<div><img src="http://nettuts.s3.amazonaws.com/449_javascriptlibraries/images/cufon.png" alt="Cufon" /></div>
<h3>3. Use Firebug in any Browser</h3>
<ul>
<li>Created by:	Mike Ratcliffe</li>
<li>License:	BSD-style</li>
<li>Usage:		All the power of Firebug in browsers other than Firefox</li>
<li>Size:		76.9kb (compressed)</li>
<li>Compatibility:	All non-Firefox browsers</li>
<li><a href="http://nettuts.s3.amazonaws.com/449_javascriptlibraries/examples/firebugLiteExample.html" target="_blank">View Demo</a></li>
<li><a href="http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js" target="_blank">Download</a></li>
</ul>
<p>Firebug is without doubt one of the greatest assets to web development available; I certainly use it on a daily basis when developing for the web, and I know it’s the plugin of choice for many others too. An unfortunate side-effect of Firebug’s excellence is that other similar tools for other browsers pale in comparison and appear inferior. Trouble-shooting layout issues and CSS bugs in IE for example can be a lesson in futility.</p>
<p>This is where Firebug Lite steps in; this is a simple JavaScript library that recreates most of the key features of the Firebug interface, bringing our debugger of choice to all other platforms. Fixing layouts and troubleshooting cross-browser issues becomes easy once more.</p>
<p>One of the greatest things about Firebug Lite is that you don’t need to download it or install anything in order to start using it; when you want to debug a page you’re working on in browsers that aren’t Firefox you can just include a script file whose SRC points to the online version:</p>
<pre>&lt;script type="text/javascript" src="http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js"&gt;&lt;/script&gt;</pre>
<p>That’s it, when you run the page in any other browser, Firebug Lite will be present on the page. For off line use, the script file, as well as a CSS file, can be downloaded and should just be used like any other JS or CSS file. The following screenshot shows Firebug Lite in Safari:</p>
<div><img style="width: 600px;" src="http://nettuts.s3.amazonaws.com/449_javascriptlibraries/images/firebugLite.png" alt="Firebug Lite" /></div>
<h3>4. Render Interactive 3d Shapes with Raphael JS</h3>
<ul>
<li>Created by:	Dmitry Baranovskiy</li>
<li>License:	MIT</li>
<li>Usage:		Draw SVG shapes on the page</li>
<li>Size:		58.4kb (compressed)</li>
<li>Compatibility:	All (all common versions from all common vendors, including IE6)</li>
<li><a href="http://nettuts.s3.amazonaws.com/449_javascriptlibraries/examples/raphaelExample.html" target="_blank">View Demo</a></li>
<li><a href="http://github.com/DmitryBaranovskiy/raphael/blob/master/raphael-min.js?raw=true" target="_blank">Download</a></li>
</ul>
<p>Ok, so this library isn’t quite so small, but there’s a reason for that; the library does a huge range of things and adds complete SVG control to a web page. Frankly, its power is awesome. Imagine being able to draw smooth curves across a web page and create custom shapes on the fly – Raphael does that.</p>
<p>You can do rounded corners that are completely cross-browser with no images (other than those actually drawn by the library), you can create faded reflections for any images, rotate the images dynamically and much more. As all paths are drawn using SVG elements, you can attach JavaScript events to them so that people can interact with the images on mouseover or click (or any other JS events). The possibilities are endless and the API provides a wide range of different methods that make working with the library a pleasure.</p>
<h3>Usage</h3>
<p>The library must of course be linked to:</p>
<pre>&lt;script type="text/javascript" src="raphael.js"/&gt;</pre>
<p>This is it, there are no other dependencies. Now we can begin creating our SVG shape:</p>
<pre>&lt;script type="text/javascript"&gt;
  var canvas = Raphael(50, 50, 620, 100);
  var shape = canvas.rect(0, 0, 500, 100, 10);
  shape.attr("fill", "#fff");
  canvas.text(250, 50, "Using Raphael to create custom shapes\ndrawn on the fly is extremely easy").attr("font", "20px 'Arial'");
 &lt;/script&gt;</pre>
<p>The library is made to be easy to use and we’ve only used a tiny fraction of its capabilities in this example. The page that this is used on should appear like this:</p>
<div><img src="http://nettuts.s3.amazonaws.com/449_javascriptlibraries/images/raphaeljs.png" alt="Raphael" /></div>
<h3>5. Progressively Enhance Your Site into the Future with Modernizr</h3>
<div><img src="http://nettuts.s3.amazonaws.com/449_javascriptlibraries/images/modernizr.png" alt="Modernizr" /></div>
<ul>
<li>Created by:	 <a href="http://farukat.es/" target="_blank">Faruk Ateş</a> and  <a href="http://paulirish.com/" target="_blank">Paul Irish</a>.</li>
<li>License:	MIT</li>
<li>Usage:		Detect HTML5 and CSS3 support</li>
<li>Size:		7kb (compressed)</li>
<li>Compatibility:	All</li>
<li><a href="http://nettuts.s3.amazonaws.com/449_javascriptlibraries/examples/modernizrExample.html" target="_blank">View Demo</a></li>
<li><a href="http://www.modernizr.com/" target="_blank">Download</a></li>
</ul>
<p>It’s an exciting time for web development with CSS3 and HTML5 advancing by the day, but it’s also a frustrating time because we’ve got all these advanced new technologies coming out with very little support. We want to start using all the great new HTML5 and CSS3 features, but most of the new HTML5 elements for example are only supported in maybe a single browser.</p>
<p>Modernizr is a tiny little library which simply tests whether the current environment supports a series of advanced features, such as the new &lt;audio&gt; and &lt;video&gt; elements. A JavaScript object is then created by the library which contains Booleans indicating whether each feature is supported. So if the current browser does support the new element, Modernizr.audio will return true. It’s that simple.</p>
<p>The library also adds class names to the &lt;html&gt; element that we can target with CSS in order to hide certain elements to the page, so when the &lt;audio&gt; element is supported, &lt;html&gt; element will receive the class name .audio. When browsers that don’t support it view the page, the element will get the class .no-audio.</p>
<p>This is incredible because it means that we can safely add these new features to our pages for the browsers that do support them, without causing chaos in the browsers that don’t. In the nature of progressive enhancement, we can create an accessible and broadly support core of content, and then progressively add more and more features for browsers that support them.</p>
<h3>Usage</h3>
<p>Let’s see it in action to display some nice CSS3 effects; first we just link to the very tiny library using the standard &lt;script&gt; element:</p>
<pre>&lt;script type="text/javascript" src="modernizr-1.0.min.js"&gt;&lt;/script&gt;</pre>
<p>Then we can add the following CSS:</p>
<pre>.no-audio #audioContainer { display:none; }</pre>
<p>This will ensure that browsers which do not support the &lt;audio&gt; element do not see it. The element does provide a built-in fallback for browsers that don’t support it, but this way is better. The body of the page could then look something like this:</p>
<pre>&lt;div id="audioContainer"&gt;
      &lt;audio id="audio" src="http://upload.wikimedia.org/wikipedia/en/7/77/Jamiroquai_-_Snooze_You_Lose.ogg" controls"true"&gt;&lt;/audio&gt;
 &lt;/div&gt;
&lt;a id="linkToAudio" href="http://upload.wikimedia.org/wikipedia/en/7/77/Jamiroquai_-_Snooze_You_Lose.ogg"&gt;Link to the audio&lt;/a&gt;</pre>
<p>Once this is done we can detect whether the browser supports HTML5 audio and show or hide the link to the media (we could easily do this using just the CSS, but this way we get to see the Modernizr object in action):</p>
<pre>if (Modernizr.audio) {
  var audioLink = document.getElementById("linkToAudio");
  audioLink.style.display = "none";
}</pre>
<p>This is all we need; capable browsers will see the &lt;audio&gt; element but not the link, while less capable browsers will see the link and not the &lt;audio&gt;:</p>
<h3>Conclusion</h3>
<p>Each of these libraries caters to a very specific problem; they’re generally much smaller than more well known and general purpose libraries, but just as useful for their specialized purpose. Each of them can aid us in one way or another when developing web sites from either easing development in IE6, using non-standard fonts without cumbersome replacement techniques, to detecting support for the latest CSS3 and HTML5 technologies or generating complex and interactive images.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.learningjquery.org/index.php/5-lesser-known-javascript-libraries-that-make-web-design-easier/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
