<?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>2Coders - блог web-разработчика &#187; jQuery</title>
	<atom:link href="http://2coders.ru/category/javascript/jquery/feed/" rel="self" type="application/rss+xml" />
	<link>http://2coders.ru</link>
	<description>Web - программирование и SEO</description>
	<lastBuildDate>Mon, 16 Apr 2012 18:05:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.4</generator>
		<item>
		<title>12 jQuery плагинов для проигрывания видео и аудио файлов</title>
		<link>http://2coders.ru/12-jquery-plugins-for-playing-video-audio/</link>
		<comments>http://2coders.ru/12-jquery-plugins-for-playing-video-audio/#comments</comments>
		<pubDate>Thu, 01 Sep 2011 18:48:18 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[jquery плагины]]></category>

		<guid isPermaLink="false">http://2coders.ru/?p=1946</guid>
		<description><![CDATA[Я уже делал несколько раз подборки jquery плагинов здесь и здесь. Сегодняшние плагины посвящены проигрыванию видео и аудио файлов на сайте. jPlayer Этот плеер поддерживает следующие форматы в HTML5-версии: mp3, m4a (AAC), m4v (H.264), ogv*, oga*, wav*, webm*. При использовании flash: mp3, m4a (AAC), m4v (H.264). По заверению автора, плеер работает в Chrome, Opera, Safari, [...]]]></description>
			<content:encoded><![CDATA[<p>Я уже делал несколько раз подборки jquery плагинов <a href="http://2coders.ru/25-poleznyx-plaginov-na-jquery/">здесь</a> и <a href="http://2coders.ru/10-poleznyx-plaginov-na-jquery/">здесь</a>. Сегодняшние плагины посвящены проигрыванию видео и аудио файлов на сайте.</p>
<p><strong>jPlayer</strong><br />
Этот плеер поддерживает следующие форматы в HTML5-версии: mp3, m4a (AAC), m4v (H.264), ogv*, oga*, wav*, webm*. При использовании flash: mp3, m4a (AAC), m4v (H.264). По заверению автора, плеер работает в Chrome, Opera, Safari, IE6, IE7, IE8, IE9, iPad, iPhone, iPod.<br />
<img src="http://2coders.ru/2coders.ru/wp-content/uploads/2011/08/jplayer3.jpg" alt="jplayer" title="jplayer" width="593" height="411" class="aligncenter size-full wp-image-1992" /><a href="http://www.jplayer.org/latest/demos/" rel='nofollow'>Перейти на сайт</a></p>
<p><span id="more-1946"></span><br />
<strong>Video JS</strong><br />
Честно говоря, для использования Video JS необязательно использовать jquery, но автор любезно предоставил <a href="http://videojs.com/jquery/" rel="nofollow">jquery-версию</a>.<br />
<img src="http://2coders.ru/2coders.ru/wp-content/uploads/2011/09/Video-JS.jpg" alt="Video JS" title="Video JS" width="593" height="245" class="aligncenter size-full wp-image-2016" /><a href="http://videojs.com/jquery/" rel='nofollow'>Перейти на сайт</a></p>
<div style='margin-top:30px'></div>
<p><strong>Acorn Media Player</strong><br />
Этот проигрыватель использует HTML5 video  тег и делает акцент на количестве настроек.<br />
<img src="http://2coders.ru/2coders.ru/wp-content/uploads/2011/09/acorn_media_player.jpg" alt="" title="acorn_media_player" width="593" height="288" class="size-full wp-image-2019" /><a href="http://ghinda.net/acornmediaplayer/demos.html" rel='nofollow'>Перейти на сайт</a></p>
<div style='margin-top:30px'></div>
<p><strong>Media Element</strong><br />
Воспроизводит аудио и видео файлы. Есть специальные версии для: WordPress, Drupal и для RoR.<br />
<img src="http://2coders.ru/2coders.ru/wp-content/uploads/2011/09/media_element.jpg" alt="Media Element" title="media_element" width="538" height="303" class="aligncenter size-full wp-image-2036" /><a href="http://mediaelementjs.com/" rel='nofollow'>Перейти на сайт</a></p>
<div style='margin-top:30px'></div>
<p><strong>Flare Video</strong><br />
По функционалу похож на ранее рассмотренные плееры. Можно использовать разные темы оформления.<br />
<img src="http://2coders.ru/2coders.ru/wp-content/uploads/2011/09/flare_video_player.jpg" alt="Flare Video" title="flare_video_player" width="593" height="296" class="aligncenter size-full wp-image-2058" /><a href="http://flarevideo.com/" rel='nofollow'>Перейти на сайт</a></p>
<div style='margin-top:30px'></div>
<p><strong>Open Standard Media</strong><br />
Плеер с кучей настроек, но с неудобным интерфейсом.<br />
<img src="http://2coders.ru/2coders.ru/wp-content/uploads/2011/09/open_standard_media.jpg" alt="Open Standard Media" title="open_standard_media" width="593" height="394" class="aligncenter size-full wp-image-2061" /><a href="http://www.mediafront.org/" rel='nofollow'>Перейти на сайт</a></p>
<div style='margin-top:30px'></div>
<p><strong>jMP3</strong><br />
jMP3 (javaScript MP3 player) поможет воспроизвести mp3 файлы на вашем сайте. Поддерживает только mp3 формат.<br />
<img src="http://2coders.ru/2coders.ru/wp-content/uploads/2011/09/jmp3.jpg" alt="jMp3" title="jmp3" width="313" height="232" class="aligncenter size-full wp-image-2063" /><a href="http://www.sean-o.com/jquery/jmp3/" rel='nofollow'>Перейти на сайт</a></p>
<div style='margin-top:30px'></div>
<p><strong>Malsup jquery media plugin</strong><br />
Поддерживает следующие видео форматы: asx, asf, avi, flv, mov, mpg, mpeg, mp4, qt, ra, smil, swf, wmv, 3g2, 3gp.<br />
И может воспроизводить такие аудио-файлы: aif, aac, au, gsm, mid, midi, mov, mp3, m4a, snd, ra, ram, rm, wav, wma.<br />
<img src="http://2coders.ru/2coders.ru/wp-content/uploads/2011/09/malsup_jquery.jpg" alt="malsup jquery" title="malsup_jquery" width="250" height="249" class="aligncenter size-full wp-image-2066" /><a href="http://malsup.com/jquery/media/#demos" rel='nofollow'>Перейти на сайт</a></p>
<div style='margin-top:30px'></div>
<p><strong>Oiplayer</strong><br />
Основан на <a rel='nofollow' href="http://flowplayer.org/">flowplayer</a>&#8216;е. Работает на Safari, Google Chrome, Firefox, Internet Explorer.<br />
<img src="http://2coders.ru/2coders.ru/wp-content/uploads/2011/09/oiplayer_jquery_plugin.jpg" alt="OIPlayer jQuery plugin" title="oiplayer_jquery_plugin" width="488" height="277" class="aligncenter size-full wp-image-2069" /><a href="http://www.openbeelden.nl/oiplayer/" rel='nofollow'>Перейти на сайт</a></p>
<div style='margin-top:30px'></div>
<p><strong>Simple Player</strong><br />
Проигрывает mp3-файлы. Работает во всех браузерах поддерживающих audio тег HTML5.<br />
<img src="http://2coders.ru/2coders.ru/wp-content/uploads/2011/09/simple_player.jpg" alt="Simple Player" title="simple_player" width="243" height="28" class="aligncenter size-full wp-image-2072" /><a href="http://jay-notes.blogspot.com/2010/06/simple-player-very-simple-html5-audio.html" rel='nofollow'>Перейти на сайт</a></p>
<div style='margin-top:30px'></div>
<p><strong>IWishQuery</strong><br />
Делает все тоже самое, что и Simple Player.<br />
<img src="http://2coders.ru/2coders.ru/wp-content/uploads/2011/09/iwishquery.jpg" alt="IWishQuery" title="iwishquery" width="300" height="33" class="aligncenter size-full wp-image-2074" /><a href="http://code.internuts.se/jquery/iwish/" rel='nofollow'>Перейти на сайт</a></p>
<div style='margin-top:30px'></div>
<p><strong>JQuery Sound Plugin</strong><br />
Не слишком удобный плеер. К тому же, без <a rel="nofollow" href="http://www.apple.com/quicktime/download/">Quicktime</a> плагина не запускается.<br />
<img src="http://2coders.ru/2coders.ru/wp-content/uploads/2011/09/jquery_sound_plugin.png" alt="JQuery Sound Plugin" title="jquery_sound_plugin" width="276" height="94" class="aligncenter size-full wp-image-2076" /><a href="http://esblog.in/sound_plugin_demo/" rel='nofollow'>Перейти на сайт</a></p>
]]></content:encoded>
			<wfw:commentRss>http://2coders.ru/12-jquery-plugins-for-playing-video-audio/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jQuery прелоадер</title>
		<link>http://2coders.ru/jquery-preloader/</link>
		<comments>http://2coders.ru/jquery-preloader/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 06:34:47 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Полезные скрипты]]></category>

		<guid isPermaLink="false">http://2coders.ru/?p=1833</guid>
		<description><![CDATA[Сегодня, мы рассмотрим, как можно сделать прелоадер. Прелоадер будет появляться, при отправке данных из формы. Для работы нам понадобятся: jQuery и собственно, сама картинка прелоадера. Картинку можно взять осюда &#8211; http://preloaders.net/. Мне понравилась вот такая: Ок, картинку выбрали и даже не забыли, что нужно будет подключить jQuery. Теперь, можно приступать к созданию формы и кода, [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://2coders.ru/wp-content/uploads/2010/09/preloader.gif" rel="lightbox[pics1833]" title="preloader-pic"><img src="http://2coders.ru/wp-content/uploads/2010/09/preloader.gif" alt="preloader-pic" width="149" height="129" class="attachment wp-att-1862 alignleft" /></a>Сегодня, мы рассмотрим, как можно сделать <strong>прелоадер</strong>. Прелоадер будет появляться, при отправке данных из формы. Для работы нам понадобятся: <strong>jQuery</strong> и собственно, сама <strong>картинка прелоадера</strong>. Картинку можно взять осюда &#8211; <a href="http://preloaders.net/" rel="nofollow">http://preloaders.net/</a>.<br />
<span id="more-1833"></span><br />
<br />
Мне понравилась вот такая:  </p>
<p><img src="http://2coders.ru/wp-content/uploads/2010/09/jquery-preloader1.gif" alt="jquery preloader" width="32" height="32" class="attachment wp-att-1837 " /><br />
Ок, картинку выбрали и даже не забыли, что нужно будет подключить jQuery. Теперь, можно приступать к созданию формы и кода, отвечающего за работу прелоадера. Форма будет простая, с 3 полями: Имя, Почта и Комментарии. Данные из формы будут передаваться в файл <strong>ajax.php</strong>.</p>
<p>Создаем файл <strong>index.php</strong>, с таким содержанием:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #339933;">&lt;</span>script src<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;http://code.jquery.com/jquery-latest.js&quot;</span><span style="color: #339933;">&gt;&lt;/</span>script<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>script<span style="color: #339933;">&gt;</span>
$<span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#submit'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">click</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
                <span style="color: #006600; font-style: italic;">//Добавляем нашу картинку в &lt;div  id=&quot;container&quot;&gt;</span>
		$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#container'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">append</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'&lt;img src=&quot;jquery-preloader.gif&quot; alt=Загрузка...&quot; id=&quot;loading&quot; /&gt;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
			<span style="color: #003366; font-weight: bold;">var</span> <span style="color: #000066;">name</span> <span style="color: #339933;">=</span> $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#name'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">val</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #003366; font-weight: bold;">var</span> email <span style="color: #339933;">=</span> $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#email'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">val</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #003366; font-weight: bold;">var</span> comments <span style="color: #339933;">=</span> $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#comments'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">val</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
                        <span style="color: #006600; font-style: italic;">//Передаем данные в файл ajax.php</span>
			$.<span style="color: #660066;">ajax</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#123;</span>
				url<span style="color: #339933;">:</span> <span style="color: #3366CC;">'ajax.php'</span><span style="color: #339933;">,</span>
				type<span style="color: #339933;">:</span> <span style="color: #3366CC;">'POST'</span><span style="color: #339933;">,</span>
				data<span style="color: #339933;">:</span> <span style="color: #3366CC;">'name='</span> <span style="color: #339933;">+</span> <span style="color: #000066;">name</span> <span style="color: #339933;">+</span> <span style="color: #3366CC;">'&amp;email='</span> <span style="color: #339933;">+</span> email <span style="color: #339933;">+</span> <span style="color: #3366CC;">'&amp;comments='</span> <span style="color: #339933;">+</span> comments<span style="color: #339933;">,</span>
&nbsp;
				success<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>result<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
				$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#response'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">remove</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
				$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#container'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">append</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'&lt;p id=&quot;response&quot;&gt;'</span> <span style="color: #339933;">+</span> result <span style="color: #339933;">+</span> <span style="color: #3366CC;">'&lt;/p&gt;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
				$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#loading'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">fadeOut</span><span style="color: #009900;">&#40;</span><span style="color: #CC0000;">500</span><span style="color: #339933;">,</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
						$<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">remove</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
					<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>	
				<span style="color: #009900;">&#125;</span>
			<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>	
			<span style="color: #000066; font-weight: bold;">return</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">;</span>
			<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>style<span style="color: #339933;">&gt;</span>
label <span style="color: #009900;">&#123;</span>
display<span style="color: #339933;">:</span> block<span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #339933;">&lt;/</span>style<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>form action<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;&quot;</span> method<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;post&quot;</span><span style="color: #339933;">&gt;</span>
	<span style="color: #339933;">&lt;</span>div id<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;container&quot;</span><span style="color: #339933;">&gt;</span>
        <span style="color: #339933;">&lt;</span>label <span style="color: #000066; font-weight: bold;">for</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;name&quot;</span><span style="color: #339933;">&gt;</span>Имя<span style="color: #339933;">&lt;/</span>label<span style="color: #339933;">&gt;</span>
		<span style="color: #339933;">&lt;</span>input type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text&quot;</span> <span style="color: #000066;">name</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;name&quot;</span> id<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;name&quot;</span> <span style="color: #339933;">/&gt;</span>
&nbsp;
		<span style="color: #339933;">&lt;</span>label <span style="color: #000066; font-weight: bold;">for</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;email&quot;</span><span style="color: #339933;">&gt;</span>Почта<span style="color: #339933;">&lt;/</span>label<span style="color: #339933;">&gt;</span>
		<span style="color: #339933;">&lt;</span>input type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text&quot;</span> <span style="color: #000066;">name</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;email&quot;</span> id<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;email&quot;</span> <span style="color: #339933;">/&gt;</span>
&nbsp;
		<span style="color: #339933;">&lt;</span>label <span style="color: #000066; font-weight: bold;">for</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;comments&quot;</span><span style="color: #339933;">&gt;</span>Комментарии<span style="color: #339933;">&lt;/</span>label<span style="color: #339933;">&gt;</span>
		<span style="color: #339933;">&lt;</span>textarea rows<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;5&quot;</span> cols<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;30&quot;</span> <span style="color: #000066;">name</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;comments&quot;</span> id<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;comments&quot;</span><span style="color: #339933;">&gt;&lt;/</span>textarea<span style="color: #339933;">&gt;</span>
		<span style="color: #339933;">&lt;</span>br <span style="color: #339933;">/&gt;</span>
		<span style="color: #339933;">&lt;</span>input type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;submit&quot;</span> <span style="color: #000066;">name</span><span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;submit&quot;</span> id<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;submit&quot;</span> value<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;Отправить&quot;</span> <span style="color: #339933;">/&gt;</span>
&nbsp;
	<span style="color: #339933;">&lt;/</span>div<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>form<span style="color: #339933;">&gt;</span></pre></td></tr></table></div>

<p>Давайте разберем более подробно некоторые моменты, относительно работы скрипта. После нажатия кнопки, мы добавляем нашу картинку в див с id=&raquo;container&raquo;. После этого передаем данные в файл ajax.php.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;">$.<span style="color: #660066;">ajax</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#123;</span>
				url<span style="color: #339933;">:</span> <span style="color: #3366CC;">'ajax.php'</span><span style="color: #339933;">,</span>
				type<span style="color: #339933;">:</span> <span style="color: #3366CC;">'POST'</span><span style="color: #339933;">,</span>
				data<span style="color: #339933;">:</span> <span style="color: #3366CC;">'name='</span> <span style="color: #339933;">+</span> <span style="color: #000066;">name</span> <span style="color: #339933;">+</span> <span style="color: #3366CC;">'&amp;email='</span> <span style="color: #339933;">+</span> email <span style="color: #339933;">+</span> <span style="color: #3366CC;">'&amp;comments='</span> <span style="color: #339933;">+</span> comments<span style="color: #339933;">,</span>
&nbsp;
				success<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>result<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
				$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#response'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">remove</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
				$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#container'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">append</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'&lt;p id=&quot;response&quot;&gt;'</span> <span style="color: #339933;">+</span> result <span style="color: #339933;">+</span> <span style="color: #3366CC;">'&lt;/p&gt;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
				$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#loading'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">fadeOut</span><span style="color: #009900;">&#40;</span><span style="color: #CC0000;">500</span><span style="color: #339933;">,</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
						$<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">remove</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
					<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>	
				<span style="color: #009900;">&#125;</span>
			<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Ответ, из скрипта <strong>ajax.php</strong>, возвращается в параграф p c id=&raquo;response&raquo;. После того, как получили данные, применяем к нашей картинке прелоадеру эффект fadeOut и удаляем её.</p>
<p>Создадим файл принимающий данные из формы. Содержимое файла <strong>ajax.php</strong> будет следующим:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #666666; font-style: italic;">//Добавляем/извлекаем данные из БД</span>
<span style="color: #666666; font-style: italic;">//Выводим сообщение о том, что комментарий добавлен</span>
<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">&quot;Комментарий добавлен&quot;</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></td></tr></table></div>

<p>Думаю, с последним скриптом у вас не должно возникнуть осложнений. Скачать готовую версию можно <a href='http://2coders.ru/wp-content/uploads/2010/09/preaploader.zip'>здесь</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://2coders.ru/jquery-preloader/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Работа с cookies в jQuery и JavaScript</title>
		<link>http://2coders.ru/rabota-s-cookies-v-jquery-i-javascript/</link>
		<comments>http://2coders.ru/rabota-s-cookies-v-jquery-i-javascript/#comments</comments>
		<pubDate>Tue, 20 Jul 2010 10:08:07 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://2coders.ru/?p=1688</guid>
		<description><![CDATA[Я не буду вдаваться в подробности, что из себя представляют cookies. Подробнее об этом вы сможете прочитать в википедии. Перейдем сразу к делу. Для начала, рассмотрим работу с cookies в JavaScript. Для этого напишем 3 простые функции: установки, получения и удаления cookies. Установка cookies В функцию установки cookies будут передаваться следующие параметры: name &#8211; имя [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://2coders.ru/wp-content/uploads/2010/07/jquery-cookies.gif" rel="lightbox[pics1688]" title="jquery-cookies"><img src="http://2coders.ru/wp-content/uploads/2010/07/jquery-cookies.gif" alt="jquery-cookies" width="200" height="133" class="attachment wp-att-1738 alignleft" /></a>Я не буду вдаваться в подробности, что из себя представляют cookies. Подробнее об этом вы сможете прочитать  в <a rel='nofollow' href="http://www.google.ru/url?sa=t&#038;source=web&#038;cd=1&#038;ved=0CBwQFjAA&#038;url=http%3A%2F%2Fru.wikipedia.org%2Fwiki%2FHTTP_cookie&#038;ei=JXRFTLncEZOMOPn3kaUE&#038;usg=AFQjCNGD3t6AYixn6Dk3IySL6XBje7cjFA&#038;sig2=dXKwbxVYTAN5p9TBg-IuHA">википедии</a>. Перейдем сразу к делу. Для начала, рассмотрим работу с <strong>cookies в JavaScript</strong>. Для этого напишем 3 простые функции: установки, получения и удаления cookies.</p>
<p><span id="more-1688"></span><br />
<strong>Установка cookies</strong></p>
<p>В функцию установки cookies будут передаваться следующие параметры:</p>
<p><strong>name</strong>  &#8211; имя куки (обязательный параметр).</p>
<p><strong>value</strong> &#8211; значение куки (необязательный параметр).</p>
<p><strong>expires</strong> &#8211; дата, когда истекает срок действия куки (необязательный параметр). </p>
<p><strong>path</strong> &#8211; устанавливает путь до куки (необязательный параметр).</p>
<p><strong>domain</strong> &#8211; домен (необязательный параметр).</p>
<p><strong>secure</strong> &#8211; указывает на то, что браузер должен использовать SSL, когда отсылает cookies серверу (необязательный параметр).</p>
<p>Обязательно нужно передать <strong>name</strong>, остальные параметры можно не трогать.</p>
<p>Функция установки cookies:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">function</span> set_cookie <span style="color: #009900;">&#40;</span><span style="color: #000066;">name</span><span style="color: #339933;">,</span> value<span style="color: #339933;">,</span> expires_year<span style="color: #339933;">,</span> expires_month<span style="color: #339933;">,</span> expires_day<span style="color: #339933;">,</span> path<span style="color: #339933;">,</span> domain<span style="color: #339933;">,</span> secure<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #003366; font-weight: bold;">var</span> cookie_string <span style="color: #339933;">=</span> <span style="color: #000066;">name</span> <span style="color: #339933;">+</span> <span style="color: #3366CC;">&quot;=&quot;</span> <span style="color: #339933;">+</span> escape<span style="color: #009900;">&#40;</span>value<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>expires_year<span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		<span style="color: #003366; font-weight: bold;">var</span> expires <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> Date <span style="color: #009900;">&#40;</span>expires_year<span style="color: #339933;">,</span> expires_month<span style="color: #339933;">,</span> expires_day<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		cookie_string <span style="color: #339933;">+=</span> <span style="color: #3366CC;">&quot;; expires=&quot;</span> <span style="color: #339933;">+</span> expires.<span style="color: #660066;">toGMTString</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>path<span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		cookie_string <span style="color: #339933;">+=</span> <span style="color: #3366CC;">&quot;; path=&quot;</span> <span style="color: #339933;">+</span> escape<span style="color: #009900;">&#40;</span>path<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>domain<span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		cookie_string <span style="color: #339933;">+=</span> <span style="color: #3366CC;">&quot;; domain=&quot;</span> <span style="color: #339933;">+</span> escape<span style="color: #009900;">&#40;</span>domain<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
	<span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>secure<span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		cookie_string <span style="color: #339933;">+=</span> <span style="color: #3366CC;">&quot;; secure&quot;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
	document.<span style="color: #660066;">cookie</span> <span style="color: #339933;">=</span> cookie_string<span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p><strong>Получение cookies</strong></p>
<p>Для получения куки необходимо знать ее имя, заранее установленное с помощью функции set_cookie().</p>
<p>Функция получения cookies:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">function</span> get_cookie <span style="color: #009900;">&#40;</span>cookie_name<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>document.<span style="color: #660066;">cookie</span><span style="color: #009900;">&#41;</span>
		<span style="color: #000066;">alert</span><span style="color: #009900;">&#40;</span>document.<span style="color: #660066;">cookie</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000066; font-weight: bold;">else</span>
		<span style="color: #000066;">alert</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;Не удалось получить cookies&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p><strong>Удаления cookies</strong></p>
<p>Для удаления cookies, устанавливаем срок действия куки на 1 секунду назад, от текущего времени.</p>
<p>Функция удаления cookies:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">function</span> delete_cookie <span style="color: #009900;">&#40;</span>cookie_name<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #003366; font-weight: bold;">var</span> cookie_date <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> Date <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> 
	cookie_date.<span style="color: #660066;">setTime</span> <span style="color: #009900;">&#40;</span>cookie_date.<span style="color: #660066;">getTime</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> <span style="color: #CC0000;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	document.<span style="color: #660066;">cookie</span> <span style="color: #339933;">=</span> cookie_name <span style="color: #339933;">+=</span> <span style="color: #3366CC;">&quot;=; expires=&quot;</span> <span style="color: #339933;">+</span> cookie_date.<span style="color: #660066;">toGMTString</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>Ниже приведен полный код примера.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #339933;">&lt;</span>html<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>head<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>title<span style="color: #339933;">&gt;</span>2Coders.<span style="color: #660066;">ru</span><span style="color: #339933;">&lt;/</span>title<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>head<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>body<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>script language<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;JavaScript&quot;</span><span style="color: #339933;">&gt;</span>
<span style="color: #003366; font-weight: bold;">function</span> set_cookie <span style="color: #009900;">&#40;</span><span style="color: #000066;">name</span><span style="color: #339933;">,</span> value<span style="color: #339933;">,</span> expires_year<span style="color: #339933;">,</span> expires_month<span style="color: #339933;">,</span> expires_day<span style="color: #339933;">,</span> path<span style="color: #339933;">,</span> domain<span style="color: #339933;">,</span> secure<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #003366; font-weight: bold;">var</span> cookie_string <span style="color: #339933;">=</span> <span style="color: #000066;">name</span> <span style="color: #339933;">+</span> <span style="color: #3366CC;">&quot;=&quot;</span> <span style="color: #339933;">+</span> escape <span style="color: #009900;">&#40;</span>value<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>expires_year<span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		<span style="color: #003366; font-weight: bold;">var</span> expires <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> Date <span style="color: #009900;">&#40;</span>expires_year<span style="color: #339933;">,</span> expires_month<span style="color: #339933;">,</span> expires_day<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		cookie_string <span style="color: #339933;">+=</span> <span style="color: #3366CC;">&quot;; expires=&quot;</span> <span style="color: #339933;">+</span> expires.<span style="color: #660066;">toGMTString</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>path<span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		cookie_string <span style="color: #339933;">+=</span> <span style="color: #3366CC;">&quot;; path=&quot;</span> <span style="color: #339933;">+</span> escape<span style="color: #009900;">&#40;</span>path<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>domain<span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		cookie_string <span style="color: #339933;">+=</span> <span style="color: #3366CC;">&quot;; domain=&quot;</span> <span style="color: #339933;">+</span> escape<span style="color: #009900;">&#40;</span>domain<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
	<span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>secure<span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#123;</span>
		cookie_string <span style="color: #339933;">+=</span> <span style="color: #3366CC;">&quot;; secure&quot;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
	document.<span style="color: #660066;">cookie</span> <span style="color: #339933;">=</span> cookie_string<span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">function</span> delete_cookie <span style="color: #009900;">&#40;</span>cookie_name<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #003366; font-weight: bold;">var</span> cookie_date <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> Date <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> 
	cookie_date.<span style="color: #660066;">setTime</span> <span style="color: #009900;">&#40;</span>cookie_date.<span style="color: #660066;">getTime</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> <span style="color: #CC0000;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	document.<span style="color: #660066;">cookie</span> <span style="color: #339933;">=</span> cookie_name <span style="color: #339933;">+=</span> <span style="color: #3366CC;">&quot;=; expires=&quot;</span> <span style="color: #339933;">+</span> cookie_date.<span style="color: #660066;">toGMTString</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">function</span> get_cookie <span style="color: #009900;">&#40;</span>cookie_name<span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>document.<span style="color: #660066;">cookie</span><span style="color: #009900;">&#41;</span>
		<span style="color: #000066;">alert</span><span style="color: #009900;">&#40;</span>document.<span style="color: #660066;">cookie</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000066; font-weight: bold;">else</span>
		<span style="color: #000066;">alert</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;Не удалось получить cookies&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>a href<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;javascript:set_cookie('2coders', 1)&quot;</span><span style="color: #339933;">&gt;</span>Set Cookie<span style="color: #339933;">&lt;/</span>a<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>a href<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;javascript:get_cookie('2coders')&quot;</span><span style="color: #339933;">&gt;</span>Get Cookie<span style="color: #339933;">&lt;/</span>a<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>a href<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;javascript:delete_cookie('2coders')&quot;</span><span style="color: #339933;">&gt;</span>Delete Cookie<span style="color: #339933;">&lt;/</span>a<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>body<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>html<span style="color: #339933;">&gt;</span></pre></td></tr></table></div>

<p>Выше, мы рассмотрели работу с<strong> кукис в javascript</strong>, теперь давайте посмотрим, как это реализовано в jQuery. В jQuery нет встроенных методов для работы с cookies, поэтому приходится использовать сторонний <a href="http://plugins.jquery.com/project/cookie">плагин</a>. Я покажу лишь некоторые функции данного плагина, а именно: установка, получение и удаление <strong>cookies</strong>.  Подробнее с возможностями плагина, можно ознакомиться на <a href="http://stilbuero.de/jquery/cookie/">сайте</a> автора.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #339933;">&lt;</span>script src<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;http://code.jquery.com/jquery-latest.js&quot;</span><span style="color: #339933;">&gt;&lt;/</span>script<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>script src<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;jquery.cookie.js&quot;</span><span style="color: #339933;">&gt;&lt;/</span>script<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>script<span style="color: #339933;">&gt;</span>
    $<span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #003366; font-weight: bold;">var</span> COOKIE_NAME <span style="color: #339933;">=</span> <span style="color: #3366CC;">'test_cookie'</span><span style="color: #339933;">;</span>
        <span style="color: #003366; font-weight: bold;">var</span> options <span style="color: #339933;">=</span> <span style="color: #009900;">&#123;</span> path<span style="color: #339933;">:</span> <span style="color: #3366CC;">'/'</span><span style="color: #339933;">,</span> expires<span style="color: #339933;">:</span> <span style="color: #CC0000;">10</span> <span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #006600; font-style: italic;">// установить cookie</span>
        $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#setCookies'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">click</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        $.<span style="color: #660066;">cookie</span><span style="color: #009900;">&#40;</span>COOKIE_NAME<span style="color: #339933;">,</span> <span style="color: #3366CC;">'2coders.ru'</span><span style="color: #339933;">,</span> options<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			<span style="color: #000066; font-weight: bold;">return</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">;</span>
         <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #006600; font-style: italic;">// получить cookie</span>
        $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#getCookies'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">click</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
            <span style="color: #000066;">alert</span><span style="color: #009900;">&#40;</span>$.<span style="color: #660066;">cookie</span><span style="color: #009900;">&#40;</span>COOKIE_NAME<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            <span style="color: #000066; font-weight: bold;">return</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">;</span>
         <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #006600; font-style: italic;">// удалить cookie</span>
        $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#delCookies'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">click</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
            $.<span style="color: #660066;">cookie</span><span style="color: #009900;">&#40;</span>COOKIE_NAME<span style="color: #339933;">,</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">,</span> options<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            <span style="color: #000066; font-weight: bold;">return</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>a href<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;#&quot;</span> id<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;setCookies&quot;</span><span style="color: #339933;">&gt;</span>Установить Cookie<span style="color: #339933;">&lt;/</span>a<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>a href<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;#&quot;</span> id<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;getCookies&quot;</span><span style="color: #339933;">&gt;</span>Получить Cookie<span style="color: #339933;">&lt;/</span>a<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>a href<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;#&quot;</span> id<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;delCookies&quot;</span><span style="color: #339933;">&gt;</span>Удалить Cookie<span style="color: #339933;">&lt;/</span>a<span style="color: #339933;">&gt;</span></pre></td></tr></table></div>

<p>Будьте внимательны при установке cookies, у пользователя может быть отключен javascript  в браузере, в таком случае ваши <strong>cookies</strong> не установятся.</p>
]]></content:encoded>
			<wfw:commentRss>http://2coders.ru/rabota-s-cookies-v-jquery-i-javascript/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>jQuery: полезные примеры, при работе с DOM</title>
		<link>http://2coders.ru/jquery-poleznye-primery-pri-rabote-s-dom/</link>
		<comments>http://2coders.ru/jquery-poleznye-primery-pri-rabote-s-dom/#comments</comments>
		<pubDate>Sun, 09 May 2010 11:50:41 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://2coders.ru/?p=1629</guid>
		<description><![CDATA[Дорогие друзья, от лица авторов этого блога, я поздравляю вас с Днём Победы! В этой статье я собрал небольшую подборку, полезных примеров, которые помогут вам, при работе с jQuery и Document Object Model. Добавление класса определенному элементу Очень часто при каком-либо, событии (неправильно заполненные поля, проверка логина и др.), появляется необходимость изменить внешний вид элемента. [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://2coders.ru/wp-content/uploads/2010/05/jquery-logo.gif" rel="lightbox[pics1629]" title="jquery-logo"><img src="http://2coders.ru/wp-content/uploads/2010/05/jquery-logo.gif" alt="jquery-logo" width="120" height="120" class="attachment wp-att-1659 alignleft" /></a>Дорогие друзья, от лица авторов этого <a href="http://2coders.ru">блога</a>, я поздравляю вас с Днём Победы!</p>
<p>В этой статье я собрал небольшую подборку, полезных примеров, которые помогут вам, при работе с <strong>jQuery</strong> и Document Object Model.<br />
<span id="more-1629"></span><br />
<br />
<strong>Добавление класса определенному элементу</strong><br />
Очень часто при каком-либо, событии (неправильно заполненные поля, проверка логина и др.), появляется необходимость изменить внешний вид элемента.  Легче всего это сделать, добавив новый класс элементу. </p>
<pre class="brush: jscript; title: ; notranslate">
$('#myelement').addClass('myclass');
</pre>
<p><strong>Удаление класса у определенного элемента</strong><br />
В прошлом примере, мы добавляли класс к элементу, в этом будем удалять.</p>
<pre class="brush: jscript; title: ; notranslate">
$('#myelement').removeClass('myclass');
</pre>
<p><strong>Проверка. Установлен класс или нет</strong><br />
Если вы часто добавляете или удаляете классы у элементов, то вам будет полезно узнать, установлен нужный класс или нет.</p>
<pre class="brush: jscript; title: ; notranslate">
$('#myelement').hasClass(class);
</pre>
<p><strong>Изменение значения в текстовом поле, при клике по ссылке</strong><br />
Иногда, при определенных действиях пользователя, появляется необходимость записать информацию в текстовое или скрытое поле. Приведенный ниже пример, показывает, как добавить значение в поле, при клике по ссылке:</p>
<pre class="brush: jscript; title: ; notranslate">
&lt;script&gt;
$(function() {
			$('#changeValue').click(function() {
			   $(&quot;#name&quot;).attr({value: &quot;2coders.ru&quot;});
			});
		});
&lt;/script&gt;
&lt;a href=&quot;#&quot; id=&quot;changeValue&quot;&gt;Click me&lt;/a&gt;
&lt;input type='text' id=&quot;name&quot; name='name' value=''&gt;
</pre>
<p><strong>Переключение CSS с помощью jQuery</strong><br />
Как вы уже могли увидеть из прошлых примеров, с помощью jQuery можно легко добавить или удалить CSS стиль. Так же просто подключить другой файл стилей.</p>
<pre class="brush: jscript; title: ; notranslate">
$('link[media='screen']').attr('href', 'newstyle.css');
</pre>
<p><strong>Добавление HTML-кода в элемент</strong><br />
Если вам надо добавить новый элемент в уже существуещий, то метод append(), как раз, то, что вам нужно.</p>
<pre class="brush: jscript; title: ; notranslate">
$('#placeHolder').append('&lt;div style=&quot;color:red&quot;&gt;test&lt;/div&gt;');
</pre>
<p><strong>Проверка. Существует элемент или нет</strong><br />
Иногда работая с JavaScript появляется необходимость проверить существует элемент или нет. Если, length == 0, то элемент не существует. </p>
<pre class="brush: jscript; title: ; notranslate">
if ($('img').length) {
    alert('image exists');
} else {
    alert(&quot;image don't exists&quot;);
}
</pre>
<p><strong>Узнать родительский элемент</strong><br />
Работая с DOM, у вас может возникнуть необходимость найти родительский элемент. Метод closest() прекрасно с этим справится, в результате мы получим id родительского элемента.</p>
<pre class="brush: jscript; title: ; notranslate">
var id = $(&quot;#myelement&quot;).closest(&quot;div&quot;).attr(&quot;id&quot;);
</pre>
<p><strong>Удалить вариант из выпадающего списка</strong><br />
Когда вы работаете со списками, у вас может возникнуть необходимость, удалить из списка вариант с определенным значением. Приведенный ниже пример, покажет, как это сделать.</p>
<pre class="brush: jscript; title: ; notranslate">
$(&quot;#selectList option[value='2']&quot;).remove();
</pre>
<p><strong>Получение текста выбранного значения</strong><br />
Еще один полезный пример, при работе со списками. В данном случае мы получаем текст выбранного варианта.</p>
<pre class="brush: jscript; title: ; notranslate">
$('#selectList :selected').text();
</pre>
<p><strong>Проверить сколько дочерних элементов</strong><br />
Проверяем, сколько div элементов происходит от #myelement.</p>
<pre class="brush: jscript; title: ; notranslate">
$(&quot;#myelement &gt; div&quot;).length;
</pre>
<p><strong>Проверка чекбоксов</strong><br />
Рассмотрим способы проверки состояния чекбоксов с помощью jQuery.</p>
<pre class="brush: jscript; title: ; notranslate">
$(elem).is(&quot;:checked&quot;);
$(elem).prop('checked');
$(elem).attr(&quot;checked&quot;);
</pre>
<p>Последний вариант (attr(&laquo;checked&raquo;);) не будет работать в последних версиях.  </p>
]]></content:encoded>
			<wfw:commentRss>http://2coders.ru/jquery-poleznye-primery-pri-rabote-s-dom/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>jQuery: делаем формы интерактивными</title>
		<link>http://2coders.ru/jquery-delaem-formy-interaktivnymi/</link>
		<comments>http://2coders.ru/jquery-delaem-formy-interaktivnymi/#comments</comments>
		<pubDate>Sat, 13 Mar 2010 13:11:08 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://2coders.ru/?p=1287</guid>
		<description><![CDATA[С появлением различных javascript фреймворков, разработчикам стало намного проще создавать интерактивные пользовательские интерфейсы. Сюда так же можно отнести взаимодействие пользователя с формами. Наверное, уже практически во всех популярных cms, появилась возможность проверки с помощью AJAX&#8217;а введеных данных. В своем посте я подготовил 5 простых примеров, показывающих, как с помощью jQuery можно сделать формы более интерактивными. [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://2coders.ru/wp-content/uploads/2010/03/jquery-forms.jpg" rel="lightbox[pics1287]" title="jquery-forms"><img src="http://2coders.ru/wp-content/uploads/2010/03/jquery-forms.jpg" alt="jquery-forms" width="545" height="381" class="attachment wp-att-1334 " /></a><br />
С появлением различных <strong>javascript</strong> фреймворков, разработчикам стало намного проще создавать интерактивные пользовательские интерфейсы. Сюда так же можно отнести взаимодействие пользователя с формами. Наверное, уже практически во всех популярных cms, появилась возможность проверки с помощью AJAX&#8217;а введеных данных. В своем посте я подготовил 5 простых примеров, показывающих, как с помощью <strong>jQuery</strong> можно сделать формы более интерактивными.<br />
<span id="more-1287"></span><br />
<strong>Счетчик символов</strong><br />
Первый пример &#8211; это счетчик символов. Ниже представлен результат (попробуйте что-нибудь ввести в поле):</p>
<p><iframe height="30" width="320" style="border: medium none ;" src="http://2coders.ru/wp-content/uploads/2010/03/counter.html" ><br />
</iframe></p>
<p>Код примера:</p>
<pre class="brush: jscript; title: ; notranslate">
&lt;script type=&quot;text/javascript&quot;&gt;
		$(function() {
			 $(&quot;input[id='input-text']&quot;).keyup(function count(){
				counter = $(&quot;input[id='input-text']&quot;).val().length;
            $(&quot;#count&quot;).html(&quot;Всего символов: &quot;+counter);
			});
		});
		&lt;/script&gt;
&lt;input type=&quot;text&quot; id=&quot;input-text&quot;/&gt;&lt;span id=&quot;count&quot;&gt;&lt;/span&gt;
</pre>
<p>При событии <strong>keyUp()</strong>, переменной counter присваевается значение, равное количеству символов в поле. После чего используя метод <strong>html()</strong> добавляем значение в элемент span.</p>
<p><strong>Ограничитель символов</strong><br />
Этот пример, очень похож на первый. С той лишь разницей, что здесь добавлено ограничение на количество вводимых символов.</p>
<p><iframe height="30" width="320" style="border: medium none ;" src="http://2coders.ru/wp-content/uploads/2010/03/limit-characters.html" ><br />
</iframe></p>
<p>Код примера:</p>
<pre class="brush: jscript; title: ; notranslate">
&lt;script type=&quot;text/javascript&quot;&gt;
		$(function() {
			$(&quot;input[id='input-text-2']&quot;).keyup(function countRemainingChars(){
			maxchars = 10; //Ограничение в 10 символов
			counter = $(&quot;input[id='input-text-2']&quot;).val().length;
		    if(counter &lt;= maxchars){
		        $(&quot;#count-2&quot;).html(maxchars-counter + &quot; символов осталось&quot;);
		    }
			if(counter == maxchars) {
				$(&quot;#input-text-2&quot;).attr({ maxlength: maxchars});
			}
			});
		});
		&lt;/script&gt;
&lt;input type=&quot;text&quot; id=&quot;input-text-2&quot;/&gt; &lt;span id=&quot;count-2&quot;&gt;&lt;/span&gt;
</pre>
<p>Максимальное количество вводимых символов задается в переменной <strong>maxchars</strong>. Как только количество символов достигает 10, к текстовому полю добавляется атрибут <strong>maxlength</strong>.</p>
<p><strong>Простая валидация поля</strong><br />
Этот пример показывает, как можно сделать простую валидацию формы. Сообщение об ошибке выводится, если после потери фокуса, поле осталось пустым. </p>
<p><iframe height="30" width="390" style="border: medium none ;" src="http://2coders.ru/wp-content/uploads/2010/03/form-validation.html" ><br />
</iframe></p>
<p>Код примера:</p>
<pre class="brush: jscript; title: ; notranslate">
&lt;script type=&quot;text/javascript&quot;&gt;
		$(function() {
					$(&quot;input[id='input-text-3']&quot;).blur(function validate(){
				    el = $(&quot;input[id='input-text-3']&quot;);
				    inputString = el.val();
				    if(inputString==&quot;&quot;){
						$(&quot;#msg&quot;).css({ &quot;color&quot;: &quot;red&quot;, });
				        $(&quot;#msg&quot;).html(&quot; Вы должны заполнить поле&quot;);
				    } else {
				        $(&quot;#msg&quot;).css({ &quot;color&quot;: &quot;green&quot;, });
						$(&quot;#msg&quot;).html(&quot; Ок&quot;);
				    }
});
		});
		&lt;/script&gt;
&lt;input type=&quot;text&quot; id=&quot;input-text-3&quot; maxlength=&quot;10&quot; /&gt;&lt;span id=&quot;msg&quot;&gt;&lt;/span&gt;
</pre>
<p>При событии <strong>blur()</strong>, проверям  введены ли символы в поле или нет. Если введены то выводим сообщение Ок, иначе сообщение о ошибке.</p>
<p><strong>Выбор значений из списка</strong><br />
Этот пример, показывает, как можно легко добавлять значения в поле. Нечто подобное есть при выборе меток (тегов) в wp или в социальных закладках. Кликните по названию фруктов.</p>
<p><iframe height="125" width="320" style="border: medium none ;" src="http://2coders.ru/wp-content/uploads/2010/03/listvalues.html" ><br />
</iframe><br />
Код примера:</p>
<pre class="brush: jscript; title: ; notranslate">
&lt;script type=&quot;text/javascript&quot;&gt;
		$(function() {
			$(&quot;ul[id='values'] li&quot;).click(function suggestValues(){
			input = $(&quot;input[id='input-text-4']&quot;);
			el = $(this).html();
			$(this).remove();
			newinput = input.val();
			newinput = (newinput + el + &quot;, &quot;);
			input.val(newinput);
			});
		});
		&lt;/script&gt;
&lt;input type=&quot;text&quot; id=&quot;input-text-4&quot; size=&quot;40&quot;/&gt;
&lt;ul id=&quot;values&quot; style=&quot;list-style-type: none; margin-left: 0; padding-left: 0;&quot;&gt;
    &lt;li&gt;Яблоко&lt;/li&gt;
    &lt;li&gt;Апельсин&lt;/li&gt;
    &lt;li&gt;Клубника&lt;/li&gt;
&lt;/ul&gt;
</pre>
<p>Для добавления значений в поле используем событие <strong>click()</strong>. При клике берем значение из списка и добавляем в текстовое поле.</p>
<p><strong>Добавление элементов в список</strong><br />
В этом примере, в отличие от предыдущего значения выбираются из выпадающего списка.<br />
<iframe height="125" width="320" style="border: medium none ;" src="http://2coders.ru/wp-content/uploads/2010/03/addelements.html" ><br />
</iframe></p>
<p>Код примера:</p>
<pre class="brush: jscript; title: ; notranslate">
&lt;script type=&quot;text/javascript&quot;&gt;
		$(function() {
			$(&quot;#submit-list&quot;).click(function selectItem(){
			s = $(&quot;option:selected&quot;)
			el = s.text();
			destination = $(&quot;#selected-items-list&quot;);
			$(destination).append('&lt;li&gt;'+el+'&lt;/li&gt;');
			$(destination +':last').css('display', 'none').fadeIn(1000);
			$(&quot;option:selected&quot;).remove();
			if($('#my-list option').length==0){
				$('input[id=submit-list]').attr('disabled', 'disabled');
			}
			});
		});
		&lt;/script&gt;
&lt;select id=&quot;my-list&quot;&gt;
    &lt;option value=&quot;1&quot;&gt;Яблоко&lt;/option&gt;
    &lt;option value=&quot;2&quot;&gt;Апельсин&lt;/option&gt;
    &lt;option value=&quot;3&quot;&gt;Клубника&lt;/option&gt;
&lt;/select&gt;
&lt;input type=&quot;button&quot; id=&quot;submit-list&quot; value=&quot;Добавить&quot;/&gt;
&lt;ul id=&quot;selected-items-list&quot; style=&quot;list-style-type: none; margin-left: 0; padding-left: 0;&quot;&gt;&lt;/ul&gt;
</pre>
<p>После того, как вы нажали кнопку добавить, значение добавлется в список с помощью метода <strong>append()</strong>. Так же при внесении значений в список, я добавил <strong>fadeIn()</strong> эффект. </p>
]]></content:encoded>
			<wfw:commentRss>http://2coders.ru/jquery-delaem-formy-interaktivnymi/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>jQuery JSON: получаем данные из твиттера</title>
		<link>http://2coders.ru/jquery-json-poluchaem-dannye-iz-tvittera/</link>
		<comments>http://2coders.ru/jquery-json-poluchaem-dannye-iz-tvittera/#comments</comments>
		<pubDate>Mon, 22 Feb 2010 19:43:10 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Полезные скрипты]]></category>

		<guid isPermaLink="false">http://2coders.ru/?p=1171</guid>
		<description><![CDATA[В этом посте, я хочу показать, как используя метод jQuery getJSON() получить данные из твиттера. Для работы с твиттером нам понадобится его API, а именно метод search. Подробнее о twitter API можно прочитать здесь. Создадим кнопку и текстовое поле, в которое будем вводить запрос для поиска. Так же добавим контейнер, для вывода полученных результатов. Напишем [...]]]></description>
			<content:encoded><![CDATA[<p>В этом посте, я хочу показать, как используя метод <strong>jQuery getJSON()</strong> получить данные из твиттера. Для работы с твиттером нам понадобится его API, а именно метод search. Подробнее о  twitter API можно прочитать <a href="http://apiwiki.twitter.com/Twitter-Search-API-Method:-search">здесь</a>. </p>
<p>Создадим кнопку и текстовое поле, в которое будем вводить запрос для поиска. Так же добавим контейнер, для вывода полученных результатов.</p>
<pre class="brush: css; title: ; notranslate">
&lt;input type=&quot;text&quot; id=&quot;twitterQuery&quot; /&gt;&lt;button button id=&quot;twitterButton&quot;&gt;Поиск&lt;/button&gt;
&lt;div id=&quot;results&quot;&gt;&lt;/div&gt;
</pre>
<p><span id="more-1171"></span></p>
<p>Напишем <strong>JavaScript</strong> код.</p>
<pre class="brush: jscript; title: ; notranslate">
&lt;script src=&quot;http://code.jquery.com/jquery-latest.js&quot;&gt;&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;&gt;
$(document).ready(function(){
var url=&quot;http://search.twitter.com/search.json?lang=ru&amp;rpp=10&amp;callback=?&amp;q=&quot;;
var query;
  $(&quot;#twitterButton&quot;).click(function(){
  $(&quot;#results&quot;).html('');
    query=$(&quot;#twitterQuery&quot;).val();
    $.getJSON(url+query,function(json){
      $.each(json.results,function(i,tweet){
         $(&quot;#results&quot;).append('&lt;div&gt;&lt;img class=&quot;imgTweet&quot; width=&quot;48&quot; height=&quot;48&quot; src=&quot;'+tweet.profile_image_url+'&quot;/&gt;'+tweet.text+' &lt;strong&gt;From:&lt;/strong&gt; &lt;a href=&quot;http://twitter.com'+tweet.from_user+'&quot;&gt;@'+tweet.from_user+'&lt;/a&gt;&lt;/div&gt;');
      });
    });
  });
});
&lt;/script&gt;
</pre>
<p>Давайте разбирем приведенный выше код. В переменной <strong>url</strong> содержится адрес для twitter API. В переменной <strong>lang</strong> мы задаем на каком языке будут искаться посты (по умолчанию английский). В<strong> rpp</strong> содержится количество выводимых постов. В <strong>query</strong> содержится наш запрос. Вот собственно и всё. Готовый вариант можно скачать <a href='http://2coders.ru/wp-content/uploads/2010/02/jqueryjson.zip'>здесь</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://2coders.ru/jquery-json-poluchaem-dannye-iz-tvittera/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Изменение стиля текстового поля при фокусе</title>
		<link>http://2coders.ru/izmenenie-stilya-tekstvogo-polya-pri-fokuse/</link>
		<comments>http://2coders.ru/izmenenie-stilya-tekstvogo-polya-pri-fokuse/#comments</comments>
		<pubDate>Sun, 21 Feb 2010 07:03:39 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Полезные скрипты]]></category>

		<guid isPermaLink="false">http://2coders.ru/?p=1099</guid>
		<description><![CDATA[Я часто пользуюсь браузером Google Chrome и мне нравится, как в нем реализовано взаимодействие пользователя с HTML-формами. Объясню более подробно, при фокусе в каком-либо поле, границы поля меняют цвет на более заметный. На мой взгляд, это очень удобно, при заполнении форм. Особенно когда человек сильно устал или плохо видит. Для реализации подобного эффекта мы будем [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://2coders.ru/wp-content/uploads/2010/02/form.gif" rel="lightbox[pics1099]" title="jquery input"><img src="http://2coders.ru/wp-content/uploads/2010/02/form.gif" alt="jquery input" width="204" height="89" class="attachment wp-att-1112 alignleft" /></a> Я часто пользуюсь браузером Google Chrome и мне нравится, как в нем реализовано взаимодействие пользователя с HTML-формами. Объясню более подробно, при фокусе в каком-либо поле, границы поля меняют цвет на более заметный. На мой взгляд, это очень удобно, при заполнении форм. Особенно когда человек сильно устал или плохо видит. Для  реализации подобного эффекта мы будем использовать <strong>jQuery</strong>.<br />
<span id="more-1099"></span></p>
<p>Для начала создадим простую форму, с несколькими текстовыми полями.</p>
<pre class="brush: xml; title: ; notranslate">
&lt;form&gt;
		&lt;table&gt;
			&lt;tr&gt;
				&lt;td&gt;Имя&lt;/td&gt;
				&lt;td&gt;&lt;input type=&quot;text&quot;/&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
				&lt;td&gt;Почта&lt;/td&gt;
				&lt;td&gt;&lt;input type=&quot;text&quot;/&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
				&lt;td&gt;Сайт&lt;/td&gt;
				&lt;td&gt;&lt;input type=&quot;text&quot;/&gt;&lt;/td&gt;
			&lt;/tr&gt;
		&lt;/table&gt;
	&lt;/form&gt;
</pre>
<p>Теперь добавим стиль для текстовых полей. Фон будет выделяться #ffeeac, а граница #aa88ff.</p>
<pre class="brush: css; title: ; notranslate">
&lt;style type=&quot;text/css&quot;&gt;
   .focus {
   border: 2px solid #aa88ff;
   background-color: #ffeeac;
}
&lt;/style&gt;
</pre>
<p>Для создания эффекта измения стиля, мы будем использовать два события: <strong>focus</strong> и <strong>blur</strong>. При фокусе мы добавляем класс <strong>.focus</strong>, при блюре убираем. Не забудьте подключить <strong>jQuery</strong>.</p>
<pre class="brush: php; title: ; notranslate">
$(function() {
			$('input[type=&quot;text&quot;]').focus(function() {
				$(this).addClass(&quot;focus&quot;);
			});
			$('input[type=&quot;text&quot;]').blur(function() {
				$(this).removeClass(&quot;focus&quot;);
			});
		});
</pre>
<p>Посмотреть получившийся результат можно, на приведенном ниже примере.<br />
<strong>Demo</strong><br />
<iframe height="120" width="320" style="border: medium none ;" src="http://2coders.ru/wp-content/uploads/2010/02/input.html" ><br />
</iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://2coders.ru/izmenenie-stilya-tekstvogo-polya-pri-fokuse/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Создаем индикатор сложности пароля</title>
		<link>http://2coders.ru/sozdaem-indikator-slozhnosti-parolya/</link>
		<comments>http://2coders.ru/sozdaem-indikator-slozhnosti-parolya/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 12:27:55 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[jQuery]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Полезные скрипты]]></category>

		<guid isPermaLink="false">http://2coders.ru/?p=929</guid>
		<description><![CDATA[Сегодня, я покажу как можно сделать индикатор сложности пароля. Всего у нас будет 4 степени сложности пароля: очень слабый, слабый, простой и надежный. Каждой степени сложности будет соответствовать свой цвет. Надежным мы будем считать пароль, который будет состоять не меньше, чем из 6-ти символов и в нем будет содержаться минимум 1 цифра, спецсимвол, буква в [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://2coders.ru/wp-content/uploads/2009/10/7266386858875d4eaec53b0380808200_medium.jpg" rel="lightbox[pics929]" title="password"><img src="http://2coders.ru/wp-content/uploads/2009/10/7266386858875d4eaec53b0380808200_medium.jpg" alt="password" width="200" height="133" class="attachment wp-att-953 alignleft" /></a><br />
Сегодня,  я покажу как можно сделать <strong>индикатор сложности пароля</strong>. Всего у нас будет 4 степени сложности пароля: очень слабый, слабый, простой и надежный. Каждой степени сложности будет соответствовать свой цвет. </p>
<p>Надежным мы будем считать пароль, который будет состоять не меньше, чем из 6-ти символов и в нем будет содержаться минимум 1 цифра, спецсимвол, буква в нижнем регистре и буква в верхнем регистре. Для работы нам понадобятся PHP и <a href="http://jquery.com/">jQuery</a>.</p>
<p><span id="more-929"></span><br />
Создадим 2 файла: <strong>indicator.php</strong> и <strong>checkpass.php</strong>. В файле indicator.php будет текстовое поле для ввода пароля и наш индикатор в виде полоски. С помощью ajax&#8217;a, мы будем отправлять пароль на проверку в файл checkpass.php.</p>
<p>Файл <strong>indicator.php</strong></p>
<pre class="brush: xml; title: ; notranslate">
&lt;html&gt;
	&lt;head&gt;
		&lt;title&gt;.::2coders.ru::.&lt;/title&gt;
		&lt;style type=&quot;text/css&quot;&gt;
			#indicator {
			background:#d9d6d6;
			width:200px;
			height:10px;
			margin-top:5px;
			}
		&lt;/style&gt;
		&lt;script src='../js/jquery.js' type='text/javascript'&gt;&lt;/script&gt;
        &lt;script type=&quot;text/javascript&quot;&gt;
		$(function() {
			$('#password').keyup(function () {
				val = $('#password').val();
				$.ajax({
				type: &quot;POST&quot;,
				url: &quot;checkpass.php&quot;,
				data: &quot;password=&quot;+val,
				success: function(html){
					$(&quot;#indicator&quot;).html(html);
				}
				});
			});
		});
		&lt;/script&gt;
	&lt;/head&gt;
	&lt;body&gt;
		Пароль: &lt;input type=&quot;password&quot; name=&quot;password&quot; id=&quot;password&quot;/&gt;
		&lt;div id=&quot;indicator&quot;&gt;&lt;/div&gt;
	&lt;/body&gt;
&lt;/html&gt;
</pre>
<p>В файле <strong>checkpass.php</strong> с помощью регулярных выражений будет производиться проверка, на содержание тех или иных символов в пароле. Степень сложности пароля будет храниться в переменной <strong>$strong</strong>. В зависимости от содержащихся символов, увеличиваем или оставляем неизменным значение переменной <strong>$strong</strong>. Пробел будет считаться недопустимым символом.</p>
<p>Файл <strong>checkpass.php</strong></p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
$password = $_POST['password'];
//Проверяем, есть ли пробелы в пароле
if(preg_match(&quot;/([\s])/&quot;, $password))
{
    $html = '&lt;div style=&quot;background:#ff0000; width:100%; height:10px;&quot;&gt;&lt;/div&gt;';
	$html .= &quot;Недопустимые символы в пароле&quot;;
}
else
{
	if(strlen($password) &lt; 6)
	{
		$html = '&lt;div style=&quot;background:#ff0000; width:100%; height:10px;&quot;&gt;&lt;/div&gt;';
		$html .= &quot;Пароль должен быть не менее 6 символов&quot;;
	}
	else
	{
		$strong = 0;
		//Проверяем, есть ли в пароле числа
		if(preg_match(&quot;/([0-9]+)/&quot;, $password))
		{
			$strong++;
		}
		//Проверяем, есть ли в пароле буквы в нижнем регистре
		if(preg_match(&quot;/([a-z]+)/&quot;, $password))
		{
			$strong++;
		}
		//Проверяем, есть ли в пароле буквы в верхнем регистре
		if(preg_match(&quot;/([A-Z]+)/&quot;, $password))
		{
			$strong++;
		}
		//Проверяем, есть ли в пароле спецсимволы
		if(preg_match(&quot;/\W/&quot;, $password))
		{
			$strong++;
		}
		//В зависимости от сложности пароля выводим полоски
		if($strong == 1)
		{
			$html = '&lt;div style=&quot;background:#ff0000; width:25%; height:10px;&quot;&gt;&lt;/div&gt;';
			$html .= &quot;Очень слабый&quot;;
		}
		if($strong == 2)
		{
			$html = '&lt;div style=&quot;background:#edc431; width:50%; height:10px;&quot;&gt;&lt;/div&gt;';
			$html .= &quot;Слабый&quot;;
		}
		if($strong == 3)
		{
			$html = '&lt;div style=&quot;background:#edc431; width:50%; height:10px;&quot;&gt;&lt;/div&gt;';
			$html .= &quot;Простой&quot;;
		}
		if($strong == 4)
		{
			$html = '&lt;div style=&quot;background:#2dda2f; width:100%; height:10px;&quot;&gt;&lt;/div&gt;';
			$html .= &quot;Надежный&quot;;
		}
	}
}
echo $html;
?&gt;
</pre>
<p>В готовом виде, при надежном пароле индикатор будет выглядеть вот так:<br />
<a href="http://2coders.ru/wp-content/uploads/2009/10/passind.gif" rel="lightbox[pics929]" title="Индикатор пароля"><img src="http://2coders.ru/wp-content/uploads/2009/10/passind.gif" alt="Индикатор пароля" width="215" height="68" class="attachment wp-att-959 " /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://2coders.ru/sozdaem-indikator-slozhnosti-parolya/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Русско-английский переводчик, с помощью Google AJAX Language API</title>
		<link>http://2coders.ru/russko-anglijskij-perevodchik-s-pomoshhyu-google-ajax-language-api/</link>
		<comments>http://2coders.ru/russko-anglijskij-perevodchik-s-pomoshhyu-google-ajax-language-api/#comments</comments>
		<pubDate>Thu, 03 Sep 2009 11:38:59 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[jQuery]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[curl]]></category>
		<category><![CDATA[Полезные скрипты]]></category>

		<guid isPermaLink="false">http://2coders.ru/?p=882</guid>
		<description><![CDATA[Google предоставляет разработчикам массу возможностей для работы со своими сервисами. Как вы наверное поняли из названия поста, я буду использовать Google AJAX API. Что же это такое и для чего это нужно можно прочитать здесь и здесь. Для работы нам понадобятся: php и jQuery. Создадим 2 файла index.php и translate.php. В файле index.php у нас [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://2coders.ru/wp-content/uploads/2009/09/google_api-2.jpg" rel="lightbox[pics882]" title="google api"><img src="http://2coders.ru/wp-content/uploads/2009/09/google_api-2.jpg" alt="google api" width="198" height="145" class="attachment wp-att-891 alignleft" /></a></p>
<p>Google предоставляет разработчикам массу возможностей для работы со своими сервисами. Как вы наверное поняли из названия поста, я буду использовать <strong>Google AJAX API</strong>. Что же это такое и для чего это нужно можно прочитать <a  rel='nofollow' href="http://code.google.com/intl/ru-RU/apis/ajaxlanguage/documentation/">здесь</a> и <a href="http://code.google.com/intl/ru-RU/apis/ajax/">здесь</a>. Для работы нам понадобятся: <strong>php</strong> и <strong>jQuery</strong>.<br />
<br />
<span id="more-882"></span><br />
Создадим 2 файла <strong>index.php</strong> и <strong>translate.php</strong>. В файле index.php у нас будет поле, в которое будет вводиться текст для перевода и область в которой будет отображаться переведенный тест.</p>
<p><strong>index.php</strong></p>
<pre class="brush: xml; title: ; notranslate">
&lt;html&gt;
	&lt;head&gt;
		&lt;title&gt;Русско-английский переводчик&lt;/title&gt;
		&lt;script src='../js/jquery.js' type='text/javascript'&gt;&lt;/script&gt;
		&lt;script type=&quot;text/javascript&quot;&gt;
		 $(function() {
			$('#translate').click(function() {
				var text = $('#source').val();
				$.ajax({
					url: 'translate.php',
					type: 'POST',
					data: 'text=' + text,
					success: function(html) {
					$(&quot;#enText&quot;).html(html);
					}
				});
			});
		 });
		&lt;/script&gt;
		&lt;style type=&quot;text/css&quot;&gt;
		#wrap {
		margin: auto;
		width:700px;
		}
		#ruText {
		float:left;
		}
		#enText {
		margin-left:350px;
		}
		&lt;/style&gt;
	&lt;/head&gt;
	&lt;body&gt;
	&lt;div id=&quot;wrap&quot;&gt;
		&lt;div id=&quot;ruText&quot;&gt;
			&lt;textarea id=&quot;source&quot; rows=&quot;5&quot; cols=&quot;39&quot;&gt;&lt;/textarea&gt; &lt;br /&gt;
			&lt;input id=&quot;translate&quot; type=&quot;submit&quot; value=&quot;Перевести&quot; /&gt;
		&lt;/div&gt;
		&lt;div id=&quot;enText&quot;&gt;

		&lt;/div&gt;
	&lt;/div&gt;
	&lt;/body&gt;
&lt;/html&gt;
</pre>
<p>Файл <strong>translate.php</strong>. Здесь мы с помощью cURL&#8217;a передаем текст на перевод. После чего, вырезаем переведенный текст и выводим в div с id=&raquo;enText&raquo;.</p>
<p><strong>translate.php</strong></p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
$text = urlencode($_POST['text']);
$ch = curl_init('http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&amp;q=' . $text . '&amp;langpair=ru%7Cen&amp;callback=foo&amp;context=bar');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, '1');
preg_match('|&quot;translatedText&quot;:&quot;(.*?)&quot;|is', curl_exec($ch), $result);
curl_close($ch);
echo $result['1'];
?&gt;
</pre>
]]></content:encoded>
			<wfw:commentRss>http://2coders.ru/russko-anglijskij-perevodchik-s-pomoshhyu-google-ajax-language-api/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Система оценок на jQuery и PHP</title>
		<link>http://2coders.ru/sistema-ocenok-na-jquery-i-php/</link>
		<comments>http://2coders.ru/sistema-ocenok-na-jquery-i-php/#comments</comments>
		<pubDate>Sat, 01 Aug 2009 10:41:14 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[jQuery]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://2coders.ru/?p=801</guid>
		<description><![CDATA[Сегодня я покажу, как с помощью jQuery и php можно созадать простенькую систему оценок, как на oboobs.ru. Только оценивать мы будем не сиськи, а статьи. =) Всего у нас будет 2 файла, не считая jQuery. Для начала создадим таблицу articles, где у нас будут храниться статьи и оценки. Сразу скажу, данные о проголосовавшем пользователе не [...]]]></description>
			<content:encoded><![CDATA[<p>Сегодня я покажу, как с помощью <strong>jQuery</strong> и <strong>php</strong> можно созадать простенькую систему оценок, как на oboobs.ru. Только оценивать мы будем не сиськи, а статьи. =) Всего у нас будет 2 файла, не считая <a href="http://jquery.com/">jQuery</a>. Для начала создадим таблицу <strong>articles</strong>, где у нас будут храниться статьи и оценки. </p>
<p>Сразу скажу, данные о проголосовавшем пользователе не будут никуда записываться, т. е. один человек может голосовать много раз. Для более серьезной <strong>системы оценок</strong> вам понадобится отдельная таблица, в которой будут храниться данные проголосовавшего пользователя. </p>
<p>Таблица <strong>articles</strong>.</p>
<pre class="brush: sql; title: ; notranslate">
CREATE TABLE `articles` (
  `id` int(11) NOT NULL auto_increment,
  `title` varchar(100) default NULL,
  `topic` text,
  `rating` int(11) default NULL,
  PRIMARY KEY  (`id`)
)
</pre>
<p>В <strong>title</strong> будет хранится заголовок статьи, в <strong>topic</strong> текст статьи, в <strong>rating</strong> рейтинг статьи.</p>
<p><span id="more-801"></span><br />
Теперь перейдем к скрипту отвечающему за вывод статей и выставление оценок.</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
require_once '../config/db.php'; //Подключаемся к БД
?&gt;
&lt;html&gt;
	&lt;head&gt;
		&lt;title&gt;jQuery Rating&lt;/title&gt;
		&lt;style type=&quot;text/css&quot;&gt;
			.article {
				border:1px solid black;
			}
			a {
				text-decoration:none;
			}
			a:hover {
				text-decoration:underline;
			}
			.plus {
				color:red;
				font-size:24px;
			}
			.minus {
				color:blue;
				font-size:24px;
			}
			.rateBar {
				font-size:25px;
				margin-left:25px;
				margin-right:10px;
				margin-top:5px;
				float:left;
			}
			.articles {
				padding-top:20px;
			}
			h2, p {
				margin:0px;
			}
			.clearing {
				clear:both;
			}
		&lt;/style&gt;
		 &lt;script src='../js/jquery.js' type='text/javascript'&gt;&lt;/script&gt;
         &lt;script type=&quot;text/javascript&quot;&gt;
            function setRate(id, operation) {
			$.ajax({
		            type: &quot;POST&quot;,
		            url: &quot;rates.php&quot;,
		            data: &quot;id=&quot; + id + &quot;&amp;operation=&quot; + operation,
		            success: function(html){
		            	$(&quot;#rating&quot; + id).html(html);
		            }
		        });
            }
        &lt;/script&gt;
	&lt;/head&gt;
	&lt;body&gt;
	   &lt;?php
		//Выбираем и выводим записи
		$result = mysql_query(&quot;SELECT
										id, title, topic, rating
								FROM
										articles
							 &quot;);
		while ($row = mysql_fetch_array($result)) {
		?&gt;
		&lt;div class=&quot;rateBar&quot;&gt;
			&lt;div&gt;&lt;a class=&quot;plus&quot; href=&quot;javascript:setRate(&lt;?=$row['id']?&gt;, 'plus')&quot;&gt;+&lt;/a&gt;&lt;/div&gt;
			&lt;div&gt;&lt;span id=&quot;rating&lt;?=$row['id']?&gt;&quot;&gt;&lt;?=$row['rating']?&gt;&lt;/span&gt;&lt;/div&gt;
			&lt;div&gt;&lt;a class=&quot;minus&quot; href=&quot;javascript:setRate(&lt;?=$row['id']?&gt;, 'minus')&quot;&gt;-&lt;/a&gt;&lt;/div&gt;
		&lt;/div&gt;
		&lt;div class=&quot;articles&quot;&gt;
			&lt;h2&gt;&lt;?=$row['title']?&gt;&lt;/h2&gt;
			&lt;p&gt;&lt;?=$row['topic']?&gt;&lt;/p&gt;
		&lt;/div&gt;
		&lt;div class=&quot;clearing&quot;&gt;&lt;/div&gt;
		&lt;?php
    	}
	?&gt;
	&lt;/body&gt;
&lt;/html&gt;
</pre>
<p>Разберем подробнее код. Чтобы поставить оценку нам нужно нажать на + или -, после чего id записи и тип операции будут переданы в функцию setRate(). Дальше данные передаются в rates.php (47 строчка), где они обрабатываются.</p>
<p>Файл <strong>rates.php</strong>.</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
require_once '../config/db.php'; //Подключаемся к БД
//Данные не фильтруются!
$id 		= $_POST['id']; //Получаем id записи
$operation 	= $_POST['operation']; //Вид операции +/-

$result = mysql_query(&quot;SELECT
								id, topic, rating
					   FROM
								articles
					   WHERE
					   			id = '$id'
						&quot;);
$row = mysql_fetch_array($result);
//Если +, то прибавляем 1, если -, то вычитаем
if ($operation == 'plus')
{
	$newRate = $row['rating'] + 1;
	//Обновляем значение в БД
        $upR = mysql_query(&quot;UPDATE
								articles
						SET
								rating = '$newRate'
						WHERE
								id = '$id'
						&quot;);
	echo $newRate; //Выводим новую оценку
}
else
{
	$newRate = $row['rating'] - 1;
        //Обновляем значение в БД
	$upR = mysql_query(&quot;UPDATE
								articles
						SET
								rating = '$newRate'
						WHERE
								id = '$id'
						&quot;);
	echo $newRate; //Выводим новую оценку
}
?&gt;
</pre>
<p>Я думаю в файле <strong>rates.php</strong> достаточно комментариев, для того, чтобы понять его работу.</p>
]]></content:encoded>
			<wfw:commentRss>http://2coders.ru/sistema-ocenok-na-jquery-i-php/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
	</channel>
</rss>

