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

<channel>
	<title>Дурацкий Девелопер &#187; JavaScript</title>
	<atom:link href="http://ddev.ru/category/javascript/feed/" rel="self" type="application/rss+xml" />
	<link>http://ddev.ru</link>
	<description>Как раскрутить сайт? Как сделать сайт или блог? Как оптимизировать работу и вывести в топ? Ответы в этом блоге.</description>
	<lastBuildDate>Mon, 31 Oct 2011 09:55:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Бесконечный скроллинг как в Facebook и Twitter</title>
		<link>http://ddev.ru/412/beskonechnyj-skrolling-kak-v-facebook-i-twitter/</link>
		<comments>http://ddev.ru/412/beskonechnyj-skrolling-kak-v-facebook-i-twitter/#comments</comments>
		<pubDate>Sun, 12 Jun 2011 19:45:53 +0000</pubDate>
		<dc:creator>Eugene Che</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Php]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[twitter]]></category>
		<category><![CDATA[UI]]></category>

		<guid isPermaLink="false">http://ddev.ru/?p=412</guid>
		<description><![CDATA[Многие из нас видели эту бесконечную прокрутку на веб-сайтах, как Facebook и Twitter, где новые сообщения загружаются, когда мы достигаем конца самой страницы. Нам не нужно нажмать на ссылку чтобы загрузить еще немного новых постов или сообщений. В этом посте я рассмотрю теорию и практику с применением PHP, MySQL и JQuery&#8230; хотя только практику =) [...]]]></description>
			<content:encoded><![CDATA[<p>Многие из нас видели эту бесконечную прокрутку на веб-сайтах, как <a href="http://ddev.ru/tag/facebook/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  facebook">Facebook</a> и <a href="http://ddev.ru/tag/twitter/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  twitter">Twitter</a>, где новые сообщения загружаются, когда мы достигаем конца самой страницы. Нам не нужно нажмать на ссылку чтобы загрузить еще немного новых постов или сообщений. В этом посте я рассмотрю теорию и практику с применением <a href="http://ddev.ru/tag/php/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  Php">PHP</a>, <a href="http://ddev.ru/tag/mysql/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  MySQL">MySQL</a> и <a href="http://ddev.ru/tag/jquery/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  jQuery">JQuery</a>&#8230; хотя только практику =)</p>
<p><span id="more-412"></span></p>
<p>Итак, нам понадобятся два файла:</p>
<ol>
<li>index.php &#8212;  загружаем основу и немного контента из базы</li>
<li>loadmore.php &#8212; динамическая загрузка данных</li>
</ol>
<p>Эти два файла нужны чтобы взаимодействовать с базой. Я использую MySQL.</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
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;">$<span style="color: #009900;">&#40;</span>window<span style="color: #009900;">&#41;</span>.<span style="color: #000066;">scroll</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; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>$<span style="color: #009900;">&#40;</span>window<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">scrollTop</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> $<span style="color: #009900;">&#40;</span>document<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">height</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> $<span style="color: #009900;">&#40;</span>window<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">height</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
		$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'div#loadmoreajaxloader'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">show</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</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;">&quot;loadmore.php?lastid=&quot;</span> <span style="color: #339933;">+</span> $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;.postitem:last&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;id&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
			success<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>html<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>html<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
					$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;#postswrapper&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">append</span><span style="color: #009900;">&#40;</span>html<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
					$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'div#loadmoreajaxloader'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">hide</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: #000066; font-weight: bold;">else</span><span style="color: #009900;">&#123;</span>
					$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'div#loadmoreajaxloader'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">html</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'&lt;center&gt;No more posts to show.&lt;/center&gt;'</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;">&#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>Этот код занимается тем, что смотрит проскролили ли мы до низа. Он расположен в index.php. Тут сразу скажу, что такой способ не айс. Т.к. если мы будем выводить мало контента и скролбара на странице не будет, то и событие не сработает. </p>
<p>Я вынес <a href="http://ddev.ru/tag/ajax/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  ajax">ajax</a> в отдельную функцию, которую можно вызывать как ссылкой, так и при срабатывании события. Но тут я привожу код без правок.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
</pre></td><td class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000088;">$dblink</span> <span style="color: #339933;">=</span> <span style="color: #990000;">mysql_connect</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'DB_HOST'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'DB_USERNAME'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'DB_PASSWORD'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">mysql_select_db</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'DB_NAME'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$_GET</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'lastid'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
	<span style="color: #000088;">$query</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'SELECT * FROM infinitescrolling WHERE id &lt; &quot;'</span><span style="color: #339933;">.</span><span style="color: #000088;">$_GET</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'lastid'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'&quot; ORDER BY id DESC LIMIT 0, 10'</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$result</span> <span style="color: #339933;">=</span> <span style="color: #990000;">mysql_query</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$query</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">while</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$rec</span> <span style="color: #339933;">=</span> <span style="color: #990000;">mysql_fetch_object</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$result</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'&lt;div class=&quot;postitem&quot; id=&quot;'</span><span style="color: #339933;">.</span><span style="color: #000088;">$rec</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">id</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'&quot;&gt;Post no '</span><span style="color: #339933;">.</span><span style="color: #000088;">$rec</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">id</span><span style="color: #339933;">.</span><span style="color: #0000ff;">': '</span><span style="color: #339933;">.</span><span style="color: #000088;">$rec</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">text</span><span style="color: #339933;">.</span><span style="color: #0000ff;">'&quot;&lt;/div&gt;'</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p> Ну а в loadmore.php у нас загрузка новых записей из базы. </p>
<p>Это только пример. Я знаю, что в продакшене такое никогда не будет и не имеет права использоваться. Это лишь пример.</p>
]]></content:encoded>
			<wfw:commentRss>http://ddev.ru/412/beskonechnyj-skrolling-kak-v-facebook-i-twitter/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>JavaScript Form submit</title>
		<link>http://ddev.ru/294/javascript-form-submit/</link>
		<comments>http://ddev.ru/294/javascript-form-submit/#comments</comments>
		<pubDate>Thu, 01 Apr 2010 20:18:01 +0000</pubDate>
		<dc:creator>Eugene Che</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[form]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[submit]]></category>

		<guid isPermaLink="false">http://ddev.ru/?p=294</guid>
		<description><![CDATA[Возникла проблема с сабмитом формы. Js не хотел сабмитить ее никак. Решение в моем случае оказалось простое: я дал кнопке имя submit чего категорически делать нельзя, т.к. в этом счучае js обращается к кнопке и пытается сделать ей submit а никак не форме.]]></description>
			<content:encoded><![CDATA[<p>Возникла проблема с сабмитом формы. <a href="http://ddev.ru/tag/js/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  js">Js</a> не хотел сабмитить ее никак.</p>
<p>Решение в моем случае оказалось простое: я дал кнопке имя <a href="http://ddev.ru/tag/submit/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  submit">submit</a> <strong>чего категорически делать нельзя</strong>, т.к. в этом счучае js обращается к кнопке и пытается сделать ей submit а никак не форме.</p>
]]></content:encoded>
			<wfw:commentRss>http://ddev.ru/294/javascript-form-submit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP RSA Encoding, Decoding and JS decoding and encoding RSA</title>
		<link>http://ddev.ru/271/php-rsa-encoding-decoding-and-js-decoding-and-encoding-rsa/</link>
		<comments>http://ddev.ru/271/php-rsa-encoding-decoding-and-js-decoding-and-encoding-rsa/#comments</comments>
		<pubDate>Fri, 08 Jan 2010 21:52:25 +0000</pubDate>
		<dc:creator>Eugene Che</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Php]]></category>
		<category><![CDATA[Adi Shamir]]></category>
		<category><![CDATA[Leonard Adleman]]></category>
		<category><![CDATA[Ron Rivest]]></category>
		<category><![CDATA[RSA]]></category>

		<guid isPermaLink="false">http://ddev.ru/?p=271</guid>
		<description><![CDATA[Вот такой жесткий заголовок. В принципе это я себе на память, чтобы долго не искать если пригодится. Суть кода в том, чтобы взять строку, закодить ее через RSA алгоритм и передавая эту строку и ключи JS скрипту раскодировать на стороне клиента. Да да именно так, а не наоборот. Хотя генерить ключик на стороне php передавать [...]]]></description>
			<content:encoded><![CDATA[<p>Вот такой жесткий заголовок. В принципе это я себе на память, чтобы долго не искать если пригодится.</p>
<p><a href="http://ddev.ru/271/php-rsa-encoding-decoding-and-js-decoding-and-encoding-rsa/rsa-photo/" rel="attachment wp-att-273" ><img class="size-full wp-image-273 alignnone" title="rsa-photo" src="http://ddev.ru/wp-content/uploads/2010/01/rsa-photo-e1262986488751.jpg" alt="rsa php js encoding decoding" width="400" height="290" /></a></p>
<p>Суть кода в том, чтобы взять строку, закодить ее через <a target="_blank" href="http://ddev.ru/goto/http://ru.wikipedia.org/wiki/RSA"  target="_blank">RSA</a> алгоритм и передавая эту строку и ключи <a href="http://ddev.ru/tag/js/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  js">JS</a> скрипту раскодировать на стороне клиента. Да да именно так, а не наоборот. Хотя генерить ключик на стороне <a href="http://ddev.ru/tag/php/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  Php">php</a> передавать его js и закриптованную строку обратно в <a href="http://ddev.ru/tag/php/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  Php">php</a> тоже можно.</p>
<p>А вот и сам архивчик: <a href="http://ddev.ru/wp-content/uploads/2010/01/rsa-php_to_js.zip" >rsa-php_to_js</a></p>
<p>Увы незнаю пока как сделать не 32битное шифрование. Но это впереди.<br />
PHP <a href="http://ddev.ru/tag/rsa/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  RSA">RSA</a> Encoding, Decoding and JS decoding and encoding <a href="http://ddev.ru/tag/rsa/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  RSA">RSA</a></p>
]]></content:encoded>
			<wfw:commentRss>http://ddev.ru/271/php-rsa-encoding-decoding-and-js-decoding-and-encoding-rsa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Мультизагрузка на flash</title>
		<link>http://ddev.ru/244/multizagruzka-na-flash/</link>
		<comments>http://ddev.ru/244/multizagruzka-na-flash/#comments</comments>
		<pubDate>Mon, 27 Jul 2009 20:40:51 +0000</pubDate>
		<dc:creator>Eugene Che</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Php]]></category>
		<category><![CDATA[multiupload]]></category>
		<category><![CDATA[мультизагрузка]]></category>

		<guid isPermaLink="false">http://ddev.ru/?p=244</guid>
		<description><![CDATA[SWFUpload это маленькая библиотека на JavaScript/Flash, которая позволяет загружать много файлов за раз и обладает поистине огромными возможностями. Посмотреть в действии (демо)&#8230; Возможности: Загрузка сразу нескольких файлов при помощи ctrl/shift выбора в диалоге открытия Javascript callbacks на все действия Информация о файле до его загрузки Стилизация элементов на странице Вывод информации во время загрузки файлов [...]]]></description>
			<content:encoded><![CDATA[<h2><strong><span style="color: #999999;">SWFUpload</span></strong><span style="color: #999999;"> это маленькая библиотека на <a href="http://ddev.ru/tag/javascript/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  JavaScript">JavaScript</a>/<a href="http://ddev.ru/tag/flash/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  Flash">Flash</a>, которая позволяет загружать много файлов за раз и обладает поистине огромными возможностями.</span></h2>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.swfupload.org/documentation/demonstration"  target="_blank">Посмотреть в действии (демо)&#8230;</a></p>
<p>Возможности:</p>
<ul>
<li>Загрузка сразу нескольких файлов при помощи ctrl/shift выбора в диалоге открытия</li>
<li>Javascript callbacks на все действия</li>
<li>Информация о файле до его загрузки</li>
<li>Стилизация элементов на странице</li>
<li>Вывод информации во время загрузки файлов</li>
<li>Загрузка без рефреща страницы</li>
<li>Работает везде где включен JavaScript и есть Flash</li>
<li>Загрузка обычными средствами, если flash или javascript отключены</li>
<li>Контроль размера файла до его загрузки</li>
<li>Выбор в диалоге, только указанных типов файлов</li>
<li>Возможность удаления после загрузки</li>
</ul>
<p><span id="more-244"></span></p>
<p>На момент поста, последний релиз &#8212; SWFUpload v2.2.0</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://code.google.com/p/swfupload/" >Скачать &gt;&gt;&gt;</a></p>
<p>На своем примере опишу, как я загружаю файлы:</p>
<p>подключаю в основном файле в head</p>
<p><code> </code></p>
<p><code> </code></p>
<p><code></p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">&lt;script type="text/javascript"&gt;</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>var swfu;</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>window.onload = function() {</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>var settings = {</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>flash_url : "swfupload.swf",</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>upload_url: "upload.<a href="http://ddev.ru/tag/php/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  Php">php</a>",</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>post_params: {"PHPSESSID" : "&lt;?php echo session_id(); ?&gt;"},</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>file_size_limit : "100 MB",</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>file_types : "*.*",</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>file_types_description : "All Files",</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>file_upload_limit : 100,</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>file_queue_limit : 0,</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>custom_settings : {</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>progressTarget : "fsUploadProgress",</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>cancelButtonId : "btnCancel"</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>},</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>debug: false,</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>// Button settings</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>button_image_url: "images/TestImageNoText_65x29.png",</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>button_width: "65",</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>button_height: "29",</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>button_placeholder_id: "spanButtonPlaceHolder",</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>button_text: '&lt;span&gt;Hello&lt;/span&gt;',</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>button_text_style: ".theFont { font-size: 16; }",</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>button_text_left_padding: 12,</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>button_text_top_padding: 3,</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span></div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>// The event handler functions are defined in handlers.<a href="http://ddev.ru/tag/js/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  js">js</a></div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>file_queued_handler : fileQueued,</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>file_queue_error_handler : fileQueueError,</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>file_dialog_complete_handler : fileDialogComplete,</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>upload_start_handler : uploadStart,</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>upload_progress_handler : uploadProgress,</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>upload_error_handler : uploadError,</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>upload_success_handler : uploadSuccess,</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>upload_complete_handler : uploadComplete,</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>queue_complete_handler : queueComplete<span style="white-space: pre;"> </span>// Queue plugin event</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>};</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>swfu = new SWFUpload(settings);</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span> };</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 400px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"><span style="white-space: pre;"> </span>&lt;/script&gt;</div>
<p></code></p>
<p><code>&lt;script type="text/javascript"&gt;<br />
<span style="white-space: pre;"> </span>var swfu;<br />
<span style="white-space: pre;"> </span>window.onload = function() {<br />
<span style="white-space: pre;"> </span>var settings = {<br />
<span style="white-space: pre;"> </span>flash_url : "swfupload.swf",<br />
<span style="white-space: pre;"> </span>upload_url: "upload.php",<br />
<span style="white-space: pre;"> </span>post_params: {"PHPSESSID" : "&lt;?php echo session_id(); ?&gt;"},<br />
<span style="white-space: pre;"> </span>file_size_limit : "100 MB",<br />
<span style="white-space: pre;"> </span>file_types : "*.*",<br />
<span style="white-space: pre;"> </span>file_types_description : "All Files",<br />
<span style="white-space: pre;"> </span>file_upload_limit : 100,<br />
<span style="white-space: pre;"> </span>file_queue_limit : 0,<br />
<span style="white-space: pre;"> </span>custom_settings : {<br />
<span style="white-space: pre;"> </span>progressTarget : "fsUploadProgress",<br />
<span style="white-space: pre;"> </span>cancelButtonId : "btnCancel"<br />
<span style="white-space: pre;"> </span>},<br />
<span style="white-space: pre;"> </span>debug: false,<br />
<span style="white-space: pre;"> </span>// Button settings<br />
<span style="white-space: pre;"> </span>button_image_url: "images/TestImageNoText_65x29.png",<br />
<span style="white-space: pre;"> </span>button_width: "65",<br />
<span style="white-space: pre;"> </span>button_height: "29",<br />
<span style="white-space: pre;"> </span>button_placeholder_id: "spanButtonPlaceHolder",<br />
<span style="white-space: pre;"> </span>button_text: '&lt;span class="theFont"&gt;Hello&lt;/span&gt;',<br />
<span style="white-space: pre;"> </span>button_text_style: ".theFont { font-size: 16; }",<br />
<span style="white-space: pre;"> </span>button_text_left_padding: 12,<br />
<span style="white-space: pre;"> </span>button_text_top_padding: 3,<br />
<span style="white-space: pre;"> </span><br />
<span style="white-space: pre;"> </span>// The event handler functions are defined in handlers.js<br />
<span style="white-space: pre;"> </span>file_queued_handler : fileQueued,<br />
<span style="white-space: pre;"> </span>file_queue_error_handler : fileQueueError,<br />
<span style="white-space: pre;"> </span>file_dialog_complete_handler : fileDialogComplete,<br />
<span style="white-space: pre;"> </span>upload_start_handler : uploadStart,<br />
<span style="white-space: pre;"> </span>upload_progress_handler : uploadProgress,<br />
<span style="white-space: pre;"> </span>upload_error_handler : uploadError,<br />
<span style="white-space: pre;"> </span>upload_success_handler : uploadSuccess,<br />
<span style="white-space: pre;"> </span>upload_complete_handler : uploadComplete,<br />
<span style="white-space: pre;"> </span>queue_complete_handler : queueComplete<span style="white-space: pre;"> </span>// Queue plugin event<br />
<span style="white-space: pre;"> </span>};<br />
<span style="white-space: pre;"> </span>swfu = new SWFUpload(settings);<br />
<span style="white-space: pre;"> </span> };<br />
<span style="white-space: pre;"> </span>&lt;/script&gt;<br />
</code></p>
<p>а в body добавляем формочку в блоке</p>
<p><code>&lt;div id="content"&gt;<br />
&lt;<a href="http://ddev.ru/tag/form/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  form">form</a> id="<a href="http://ddev.ru/tag/form/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  form">form</a>1" action="index.php" enctype="multipart/<a href="http://ddev.ru/tag/form/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  form">form</a>-data" method="post"&gt;<br />
&lt;div id="fsUploadProgress" class="fieldset flash"&gt;<br />
&lt;span class="legend"&gt;Upload Queue&lt;/span&gt;<br />
&lt;/div&gt;<br />
&lt;div id="divStatus"&gt;0 Files Uploaded&lt;/div&gt;<br />
&lt;div&gt;<br />
&lt;span id="spanButtonPlaceHolder"&gt; &lt;/span&gt;<br />
&lt;input id="btnCancel" style="margin-left: 2px; font-size: 8pt; height: 29px;" onclick="swfu.cancelQueue();" disabled="disabled" type="button" value="Cancel All Uploads" /&gt;<br />
&lt;/div&gt;<br />
&lt;/form&gt;<br />
&lt;/div&gt;</code></p>
<p>далее проверяем все ли файлы подключенные на своих местах:</p>
<p><strong>images</strong></p>
<ul>
<li>TestImageNoText_65x29.png</li>
</ul>
<p><strong>js</strong></p>
<ul>
<li>fileprogress.js</li>
<li>handlers.js</li>
<li>swfupload.queue.js</li>
</ul>
<p><strong>upload</strong><br />
<strong>.</strong></p>
<ul>
<li>default.css</li>
<li>index.php</li>
<li>swfupload.js</li>
<li>swfupload.swf</li>
<li>upload.php</li>
</ul>
<p>вот код файла upload.php тут можно навернуть еще всякого, но это лишь пример.</p>
<p>если неохото копать ручками, то можно качать этот пример.</p>
<p><a href="http://ddev.ru/wp-content/uploads/2009/07/SWFupload.zip" >SWFupload</a></p>
<p>кстати в оригинальной версии есть примеры даже с ресайзом изображений и сессиями.</p>
]]></content:encoded>
			<wfw:commentRss>http://ddev.ru/244/multizagruzka-na-flash/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Путеводитель по регулярным выражениям: инструменты и инструкции</title>
		<link>http://ddev.ru/188/putevoditel-po-regulyarnym-vyrazheniyam-instrumenty-i-instrukcii/</link>
		<comments>http://ddev.ru/188/putevoditel-po-regulyarnym-vyrazheniyam-instrumenty-i-instrukcii/#comments</comments>
		<pubDate>Fri, 03 Jul 2009 10:04:58 +0000</pubDate>
		<dc:creator>Eugene Che</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Php]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[XML]]></category>
		<category><![CDATA[Парсинг]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[expression]]></category>
		<category><![CDATA[regExp]]></category>
		<category><![CDATA[regular expression]]></category>
		<category><![CDATA[регулярки]]></category>
		<category><![CDATA[регулярные выражения]]></category>

		<guid isPermaLink="false">http://ddev.ru/?p=188</guid>
		<description><![CDATA[Источник: smashingmagazine.com Регулярные выражения часть любого программерского набора. Они могут пригодиться, если Вам необходимо найти, заменить части текстовых шаблонов или символов. Регулярные выражения, как швейцарский нож для модификации строк. Хотите чтобы url сайта выглядел приятно? Используйте regex. Нужно удалить всю пунктуацию или убрать все теги? Тем более используйте регулярные выражения. Использование регулярных выражений безгранично. Регулярные [...]]]></description>
			<content:encoded><![CDATA[<p>Источник: <a target="_blank" href="http://ddev.ru/goto/http://www.smashingmagazine.com/2009/06/01/essential-guide-to-regular-expressions-tools-tutorials-and-resources/" >smashingmagazine.com</a></p>
<p><strong><a href="http://ddev.ru/tag/regulyarnye-vyrazheniya/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  регулярные выражения">Регулярные выражения</a></strong> часть любого программерского набора. Они могут пригодиться, если Вам необходимо найти, заменить части текстовых шаблонов или символов. Регулярные выражения, как швейцарский нож для модификации строк. Хотите чтобы url сайта выглядел приятно? Используйте regex. Нужно удалить всю пунктуацию или убрать все теги? Тем более используйте регулярные выражения. Использование регулярных выражений безгранично.</p>
<p>Регулярные выражения это то, с чем Вам нужно столкнуться как минимум единожды, хотябы для того, чтобы поправить .htaccess файл для создания Человеко-понятных ссылок, или что-то покруче, например для фильтрации RSS фидов или другой информации. Ниже представленно <strong>несколько ресурсов, которые помогут Вам на пути изучения и использования regex</strong>.</p>
<p><span id="more-188"></span></p>
<h3>Вступление</h3>
<p>Только начали изучение regex? Вот несколько must-read ресурсов, которые познакомят Вас с основами.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://immike.net/blog/2007/04/06/the-absolute-bare-minimum-every-programmer-should-know-about-regular-expressions/" >Необходимый минимум о регулярных выражениях</a><br />
Простая и понятная статья о принципах работы с регулярными выражениями.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://immike.net/blog/2007/04/06/the-absolute-bare-minimum-every-programmer-should-know-about-regular-expressions/" ><img src="http://ddev.ru/wp-content/uploads/2009/07/abs.gif" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.linuxforums.org/applications/demystifying_regular_expressions.html" >Обьяснение Регулярных Выражений</a><br />
В этой статье описываются простые примеры регулярных выражений. Автор старается донести до пользователей технику использования поиска с использованием регулярных выражений.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.regular-expressions.info/quickstart.html" >Регулярные выражения: быстрый старт</a><br />
Учебник, для начинающих осваивать regex, написанный в легкой и доступной форме.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://www.regular-expressions.info/quickstart.html" ><img src="http://ddev.ru/wp-content/uploads/2009/07/greedy.gif" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.webcheatsheet.com/php/regular_expressions.php" >Использование регулярных выражений в PHP</a><br />
Небольшой обзор о синтаксисе регулярных выражений в <a href="http://ddev.ru/tag/php/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  Php">PHP</a>.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://gnosis.cx/publish/programming/regular_expressions.html" >Научитесь использовать регулярные выражения</a><br />
Каждый раздел этой стать содержит пример кода, что поможет более легко выспринимать описание.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.zytrax.com/tech/web/regex.htm" >Регулярные Выражения &#8212; путеводитель пользователя</a><br />
Достаточно полное и всесторонее описание регулярных выражений, с примерами с сносками.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.phpfreaks.com/content/print/126" >PHP фрики: Регулярные Выражения</a><br />
Еще одна обьемная статья с основами регулярных выражений; статья также описывает использование метасимволов, жадность и ленивость, а также модификаторы и другие полезные дополнения.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://msdn.microsoft.com/en-us/library/6wzad2b2(VS.85).aspx" >Введение в регулярные выражения от MSDN</a><br />
Статья описывает введение в регулярные выражения и то, как их можно использовать.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.addedbytes.com/cheat-sheets/regular-expressions-cheat-sheet/" >Шпаргалка по регулярным выражениям</a><br />
Данная шпаргалка описывает паттерны и не основывается на каком-то конкретном языке. Доступна в PDF и PNG.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://www.addedbytes.com/cheat-sheets/regular-expressions-cheat-sheet/" ><img src="http://ddev.ru/wp-content/uploads/2009/07/regex.gif" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.visibone.com/regular-expressions/" >Регулярные Выражения: шпаргалка</a><br />
Краткое описание использования регулярных выражений для <a href="http://ddev.ru/tag/javascript/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  JavaScript">Javascript</a>. Доступна в png.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://www.visibone.com/regular-expressions/" ><img src="http://ddev.ru/wp-content/uploads/2009/07/cm.gif" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.mnlab.cs.depaul.edu/~ehab/Courses/TDC568/resources/PerlQuickRef.pdf" >Регулярные выражения для Perl: шпаргалка</a> (pdf) и <a target="_blank" href="http://ddev.ru/goto/http://refcards.com/docs/trusketti/perl-regexp/perl-regexp-refcard-a4.pdf" >Регулярные выражения для Perl: краткое описание</a> (pdf)</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://en.wikipedia.org/wiki/Comparison_of_regular_expression_engines" >Сравнение методов регулярных выражений</a><br />
Wikipedia полезна при сравнении регулярных выражений на несколких языках. Также имеется таблица языков, которые поддерживают работу с регулярными выражениями, и различия между ними.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.railsrocket.com/articles/regular-expressions-in-ruby-and-rails" >Регулярные Выражения в Ruby and Rails</a><br />
Регулярные выражения в Rails окружены прямыми слешами, тоесть они выглядят следующим образом: /[0-9]*/. Модификаторы, (например регистронезависимый i) ставятся после второго слеша.</p>
<h3>Всесторонний разбор</h3>
<p>Эти путеводители более комплексные нежели представленные выше. Это замечательные статьи для программистов и продвинутых пользователей, которые позволят углубится в изучение регулярных выражений и их функциональность.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.smashingmagazine.com/2009/05/06/introduction-to-advanced-regular-expressions/" >Основные понятия на пути к продвинутому использованию регулярных выражений</a><br />
Это введение в продвинутое использование регулярных выражений, включающее восемь примеров и основных описаний. Каждый пример показывает простой способ соответствия правилам при использовании в сложных последовательностях. Если у Вас нет опыта работы с регулярныеми выражениями, обратите внимание на <a target="_blank" href="http://ddev.ru/goto/http://www.lateralcode.com/regular-expressions/" >эту статью</a> для начала. Синтаксис используемый тут, показывается на примере Perl и PHP.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.regular-expressions.info/tutorialcnt.html" >Инструкция Regex</a><br />
Эта инструкция шаг за шагом учит использовать инструменты и рассказывает обо всех аспектах регулярных выражений. Лучше читать от начала и до конца, т.к. каждая последующая глава основывается на предыдущей.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://www.regular-expressions.info/tutorialcnt.html" ><img src="http://ddev.ru/wp-content/uploads/2009/07/regex-tutorial.png" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.zytrax.com/tech/web/regex.htm" >Регулярные выражения &#8212; путеводитель ползователя</a><br />
Это путеводитель с легким введением и быстрым но конкретным описанием всего, что связанно с regex. Также включает примеры.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://www.zytrax.com/tech/web/regex.htm" ><img src="http://ddev.ru/wp-content/uploads/2009/07/regex-user-guide.png" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://perldoc.perl.org/perlretut.html" >perlretut</a><br />
Очень хорошее руководство о регулярках на Perl. Это руководство достаточно детализированно и хорошо описывает тему. Стоит прочесть от начала до конца.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://perldoc.perl.org/perlretut.html" ><img src="http://ddev.ru/wp-content/uploads/2009/07/perl-regex.png" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://regexlib.com/Resources.aspx" >Ресурсы о регулярных выражениях</a><br />
Это сборник ресурсов о и про регулярные выражения, включает в себя статьи и приложения.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.larkware.com/RegexTools.html" >Regex Tools</a><br />
Примеры для .NET о работе с регулярными приложениями.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://immike.net/blog/2007/06/21/extreme-regex-foo-what-you-need-to-know-to-become-a-regular-expression-pro/" >Экстримальный regex: все, что нужно, для профессиональной работы с регулярными выражениями</a><br />
В этой статье описываются жадные и ленивые ругулярные выражения, способы их применения, а также модификаторы, синтаксис и другие основы регулярных выражений.</p>
<h3>Практика регулярных выражений</h3>
<p><strong>Разбор номера телефона</strong> (<a target="_blank" href="http://ddev.ru/goto/http://www.talkphp.com/advanced-php-programming/1612-8-practical-php-regular-expressions.html" >от Matt83</a>)<br />
Номер соответствует следующей форме: (###) ###-####</p>
<pre class="php">$string = "(232) 555-5555";
if (preg_match('/^\(?[0-9]{3}\)?|[0-9]{3}[-. ]?
[0-9]{3}[-. ]?[0-9]{4}$/', $string)) {
echo "Это верный номер.";
}</pre>
<p><strong>Почтовые коды</strong> (<a target="_blank" href="http://ddev.ru/goto/http://www.talkphp.com/advanced-php-programming/1612-8-practical-php-regular-expressions.html" >от Matt83</a>)</p>
<pre class="php">	$string = "55324-4324";
if (preg_match('/^[0-9]{5,5}
([- ]?[0-9]{4,4})?$/', $string)) {
echo "Это правильный почтовый код.";
}</pre>
<p><strong>Соответствие имен пользователей</strong> (<a target="_blank" href="http://ddev.ru/goto/http://immike.net/blog/2007/04/06/5-regular-expressions-every-web-programmer-should-know/" >от immike.net</a>)</p>
<pre class="js">function validate_username( $username ) {
  if(preg_match('/^[a-zA-Z0-9_]{3,16}$/', $_GET['username'])) {
    return true;
  }
  return false;
}</pre>
<p><strong>Соответствие XHTML/XML тегам</strong> (<a target="_blank" href="http://ddev.ru/goto/http://immike.net/blog/2007/04/06/5-regular-expressions-every-web-programmer-should-know/" >от immike.net</a>)</p>
<pre class="js">function get_tag( $tag, $xml ) {
  $tag = preg_quote($tag);
  preg_match_all('{&lt;'.$tag.'[^&gt;]*&gt;(.*?)&lt;/'.$TAG.'&gt;.'}',
                   $xml,
                   $matches,
                   PREG_PATTERN_ORDER);

  return $matches[1];
}</pre>
<p><strong>Проверка URL</strong> (<a target="_blank" href="http://ddev.ru/goto/http://www.talkphp.com/advanced-php-programming/1612-8-practical-php-regular-expressions.html" >от Matt83</a>)</p>
<pre class="php">$szString = "http://www.talkPHP.com";
if (preg_match('/^(http|https|ftp):\/\/([\w]*)\.([\w]*)\.
(com|net|org|biz|info|mobi|us|cc|bz|tv|ws|name|co|me)
(\.[a-z]{1,3})?\z/i', $szString))
    echo "Это валидный URL";</pre>
<p><strong><a href="http://ddev.ru/tag/parsing/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  Парсинг">Парсинг</a> электронной почты</strong> (<a target="_blank" href="http://ddev.ru/goto/http://www.talkphp.com/advanced-php-programming/1612-8-practical-php-regular-expressions.html" >от Matt83</a>)</p>
<pre class="php">$string = "first.last@domain.co.uk";
if (preg_match(
'/^[^\W][a-zA-Z0-9_]+(\.[a-zA-Z0-9_]+)*\@[a-zA-Z0-9_]+
(\.[a-zA-Z0-9_]+)*\.[a-zA-Z]{2,4}$/',
$string)) {
echo "Это правильный e-mail.";</pre>
<p><strong>Валидность номеров кредитных карт</strong> (JavaScript, <a target="_blank" href="http://ddev.ru/goto/http://ntt.cc/2008/05/10/over-10-useful-javascript-regular-expression-functions-to-improve-your-web-applications-efficiency.html" >от ntt.cc</a>)</p>
<pre class="js">	function luhn (cc) {
   var sum = 0;
   var i;

   for (i = cc.length - 2; i &gt;= 0; i -= 2) {
      sum += Array (0, 2, 4, 6, 8, 1, 3, 5, 7, 9)
      [parseInt (cc.charAt (i), 10)];
   }
   for (i = cc.length - 1; i &gt;= 0; i -= 2) {
      sum += parseInt (cc.charAt (i), 10);
   }
   return (sum % 10) == 0;
}</pre>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.codeproject.com/KB/aspnet/All_Regular_Expression.aspx" >Регулярные Выражения, то, что нужно на практике</a><br />
Множество regex-паттернов которые часто используются при разработке.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://www.codeproject.com/KB/aspnet/All_Regular_Expression.aspx" ><img src="http://ddev.ru/wp-content/uploads/2009/07/codep.gif" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://ntt.cc/2008/05/10/over-10-useful-javascript-regular-expression-functions-to-improve-your-web-applications-efficiency.html" >10+ Полезных JavaScript функция для работы с регулярными выражениями.</a><br />
JavaScript регулярные выражения для различных проверок: на пустые строки, на числовые данные, и другое.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://regexlib.com/" >RegExLib.com</a><br />
Первая онлайн библиотека регулярных выражений. На данный момент содержит 2,511 паттернов от более чем 1,500 пользователей. Вы можете выбрать наиболее подходящий пример для своего проекта.</p>
<h3>Инструменты Regex</h3>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.regex-tester.de/en,regex.html" >Regex онлайн тестер</a><br />
Regex позволяет тестировать Ваши регулярные выражения с различными входными данными и различными путями.Также можно проводить тестирование с уже готовыми стриницами. Есть откат к предыдушиму изменению, так что при неправильном ходе создания паттерны, можно откатиться назад. Встроенные паттерны, фильтры и возможность использования модификаторов позволят создавать правильные <a href="http://ddev.ru/tag/regulyarki/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  регулярки">регулярки</a>. Для использования этого инструмента нужны общие знания о регулярных выражениях.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://www.regex-tester.de/en,regex.html" ><img src="http://ddev.ru/wp-content/uploads/2009/07/regextester1.png" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://tools.osherove.com/CoolTools/Regulator/tabid/185/Default.aspx" >The Regulator</a><br />
The Regulator &#8212; продвинутый и бесплатный инструмент, который позволит оттестировать регулярные выражения и поможет понять их устройство. Входные данные могут быть как текстовые, так и уже готовые страницы. Позволяет использовать нахождение вхождений, деление и замену. Строит иерархические деревья паттернов.Может генерировать код VB.NET и C#.</p>
<p><a target="_blank" href="http://ddev.ru/goto/https://addons.mozilla.org/en-US/firefox/addon/2077" >Regular Expression Tester Firefox Plugin</a><br />
Это плагин для Firefox, который позволяет разработчикам тестировать их регулярные выражения. Инструмент включает регистрозависимость, глобальный и многострочный поиск, подсветку вхождений, функцию замены. Автозакрытие параметров, тестирование при написании и сохранение паттернов.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/https://addons.mozilla.org/en-US/firefox/addon/2077" ><img src="http://ddev.ru/wp-content/uploads/2009/07/tester.jpg" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://llamerada.sakura.ne.jp/html2regexp/index.html" >html2regexp &#8212; генератор регулярных выражений для HTML</a><br />
html2<a href="http://ddev.ru/tag/regexp/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  regExp">regexp</a> написан на ruby для генерирования регулярных выражений.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://osteele.com/tools/rework/" >reWork</a><br />
ReWork &#8212; это бенчмарк для регулярок. Вводим паттерн и текст в соответствующие поля. Результаты автоматически появлются на экране. Можно применять функции поиска, замены, дробления, сканирования и парсинга, а также генерировать графы конечного автомата (КА).</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://gskinner.com/RegExr/" >RegExr</a><br />
RegExr является онлайн тестером и генератором паттернов ля регулярок. Тут можно поиграться с регулярками перед тем как вводить в свой проект.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://gskinner.com/RegExr/" ><img src="http://ddev.ru/wp-content/uploads/2009/07/regexr.png" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.weitz.de/regex-coach/" >The Regex Coach</a><br />
Кроссплатформеный инструмент который обучит Вас работе с регулярными выражениями.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://www.weitz.de/regex-coach/" ><img src="http://ddev.ru/wp-content/uploads/2009/07/regex-coach.png" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.rubular.com/" >Rubular</a><br />
Онлайн тестер паттернов, написанный на Ruby.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://rexv.org/" >Rex V &#8212; Regular Expression eValuator</a><br />
Инструмент тестирует на валидность регулярки написанные для использования в PHP PCRE, PHP Posix и Javascript.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://ryanswanson.com/regexp/#start" >Flex 3 Regualr Expression Explorer</a><br />
Этот сервис предоставляет доступ к сообществу в котором присутствуют популярные регулярные выражения, а также позволяет тестировать свои.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://ryanswanson.com/regexp/#start" ><img src="http://ddev.ru/wp-content/uploads/2009/07/flex.gif" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://regexpal.com/" >regexpal</a><br />
Интерактивный javascript тестер для регулярок. Сервис <a target="_blank" href="http://ddev.ru/goto/http://code.google.com/p/regexpal/" >можно установить себе</a> на хостинг, т.к. он является опенсорсным.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://regexpal.com/" ><img src="http://ddev.ru/wp-content/uploads/2009/07/regexpal.png" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://txt2re.com/" >Txt2re</a><br />
Regex генератор с возможностью подсветки синтаксиса и вхождений, который позволит писать паттерны эффективней.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://txt2re.com/" ><img src="http://ddev.ru/wp-content/uploads/2009/07/txt2re.png" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://osteele.com/tools/reanimator/" >reAnimator: Regular Expression FSA Visualizer</a><br />
Подручное средство для regex выражений. Для ознакомлений стоит перейти по ссылке <a target="_blank" href="http://ddev.ru/goto/http://osteele.com/archives/2006/02/reanimator" >launch post</a>.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://osteele.com/tools/reanimator/" ><img src="http://ddev.ru/wp-content/uploads/2009/07/reanimator.png" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://tools.netshiftmedia.com/regexlibrary/" >Javascript Regular Expression Validator</a><br />
Полезный regex tester для Javascript который также имеет набор уже готовых паттернов. Простой но мощный инструмент.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://tools.netshiftmedia.com/regexlibrary/" ><img src="http://ddev.ru/wp-content/uploads/2009/07/js-regex-validator.png" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.regexbuddy.com/" >RegEx Buddy</a><br />
RegexBuddy, вот кто заслуживает внимания! Лично я пользуюсь только им. Это мощнейшее средство для составления регулярок, с подсветкой синтаксиса, проверкой на валидность, собственной встроенной библиотекой паттернов. Он работает с различными типами регулярок eReg, pReg. Генерирует код сразу для нескольких языков. Имеется откат при неправильном составлении регулярок. Строит иерархию паттерна. Можно применять сразу несколько регулярок к строке последовательно. Вобщем это мой выбор.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://www.regexbuddy.com/" ><img src="http://ddev.ru/wp-content/uploads/2009/07/regexbuddy.png" alt="Screenshot" /></a></p>
<p>На рисунке, как-раз показано построение дерева, которое поможет рассмотреть паттерн шаг за шагом.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://www.regexbuddy.com/" ><img src="http://ddev.ru/wp-content/uploads/2009/07/regexbuddy2.png" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.ultrapico.com/Expresso.htm" >Expreso</a><br />
Expresso &#8212; это бесплатное средство для разработчика, завоевавшее различные награды. Вы можете строить комплексные регулярные выражения, выбирая из встроенного набора различные паттерны и тестировать на реальных образцах данных. Также имеется возможность генерации кода под Visual Basic, C#, или C++ и просматривать выражения в виде дерева также как это делает RegEx Buddy. Можно подсвечивать группы и отдельные вхождения. Также можно создать дополнительную библиотеку с собственными паттернами и использовать ее для тестирования своих регулярок. Требует регистрации и только под <a href="http://ddev.ru/tag/windows/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  windows">Windows</a>.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.jslab.dk/tools.regex.php" >JavaScript Regex Generator</a><br />
Попытка сделать генератор регулярок с дружественным интерфейсом. Есть баги при просмотре в IE. Есть ограничения на работу с регулярками.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://www.jslab.dk/tools.regex.php" ><img src="http://ddev.ru/wp-content/uploads/2009/07/lab.gif" alt="Screenshot" /></a></p>
<h3>Regex видеоуроки</h3>
<p>Для тех, кто хочет учить регулярные выражения по видеоурокам, есть отличные скринкасты.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.e-texteditor.com/blog/2007/regular_expressions_tutorial" >Учим Регулярные Выражения (Video Tutorial and Cheatsheet)</a><br />
В этом видео рассказывается о том, как пользоваться <a target="_blank" href="http://ddev.ru/goto/http://e-texteditor.com/" >E Text Editor</a> для составления регулярок.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://blog.themeforest.net/tutorials/a-crash-course-in-regular-expressions/" >Погружение В Регулярные Выражения</a><br />
Вводный курс от Джефри Вейя. Немного старенький, но все еще актуальный и полезный туториал по изучению регулярных выражений. Показывается как проверять на валидность электронные адреса. &#171;Для новичка в разработке, регулярные выражения самые ужасные конструкции на свете. Для простоты разберем регулярные выражения на некоторых примерах. После небольшого изучсения Вы поймете, что регулярки довольно структурированные и не сложные в понимании конструкции.&#187;</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://blog.themeforest.net/tutorials/a-crash-course-in-regular-expressions/" ><img src="http://ddev.ru/wp-content/uploads/2009/07/crash.jpg" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://blog.themeforest.net/screencasts/regular-expressions-for-dummies/" >Регулярные Выражения для чайников</a><br />
Вводное видео для изучения регулярных выражений. В конце дается задание для проверки усвренного материала.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://blog.themeforest.net/screencasts/regular-expressions-for-dummies/" ><img src="http://ddev.ru/wp-content/uploads/2009/07/regex-for-dummies.png" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://blog.themeforest.net/screencasts/regex-for-dummies-day-2/" >Regex для чайников: день 2</a><br />
Продолжение <a target="_blank" href="http://ddev.ru/goto/http://blog.themeforest.net/screencasts/regular-expressions-for-dummies/" >перврго скринкасиа</a> по изучению регулярок.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://blog.themeforest.net/screencasts/regex-for-dummies-day-2/" ><img src="http://ddev.ru/wp-content/uploads/2009/07/regex-dummies-2.png" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.videophpblog.com/2008/12/10/regular-expressions-the-series/" >Регулярные Выражения (серии)</a><br />
Пять серий по введению в Регулярные Выражения.</p>
<h3>Учебники по регулярным выражениям</h3>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.roscripts.com/PHP_regular_expressions_examples-136.html" >Примеры регулярных выражений на PHP</a><br />
Множество различных примеров регулярных выражений, которые могут использоваться в PHP. Описывается несколько полезных вещей: валидациа номеров кредиток, дат, email адресов, и еще несколько полезных вещей.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://www.roscripts.com/PHP_regular_expressions_examples-136.html" ><img src="http://ddev.ru/wp-content/uploads/2009/07/php-regex-examples.png" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.phpf1.com/tutorial/php-regular-expression.html" >Учебник по регуляркам для PHP</a><br />
Эта статья раскрывает основы использования регулярных выражений в PHP и показывает примеры наиболее распространенных regex-паттернов.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.linuxforums.org/applications/demystifying_regular_expressions.html" >Разоблачение регулярных выражений</a><br />
Регулярные выражения кажутся достаточно сложными. Мало того, что язык выглядит довольно странным, он также требует логики. Эта статья старается стереть клеймо, которое некоторые навешивают на регулярные выражения, и показывает простоту и логичность паттернов в примерах.</p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.sitepoint.com/blogs/2006/09/26/the-joy-of-regular-expressions-1/" >Радость регулярных выражений [1]</a><br />
Эта обучающая программа использует простые примеры, которые не включают несвязные демонстрационные строки как например “aabbcc”, чтобы показать, как regex работает на самом деле. Статья раскрывает все основные понятия: точное соответствее, позитивное соответствовие, модификаторы шаблона и другие примеры.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://www.sitepoint.com/blogs/2006/09/26/the-joy-of-regular-expressions-1/" ><img src="http://ddev.ru/wp-content/uploads/2009/07/joy-of-regex.png" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.sitepoint.com/blogs/2006/09/27/the-joy-of-regular-expressions-2/" >Радость регулярных выражений [2]</a><br />
Во второй обучающей программе показывается как регулярные выражения обеспечивают много полезных функций, например, как найти изображения с .jpg расширениями, или нахождение xss уязвимостей в Вашем коде.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://www.sitepoint.com/blogs/2006/09/27/the-joy-of-regular-expressions-2/" ><img src="http://ddev.ru/wp-content/uploads/2009/07/joy-of-regex2.png" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://javascriptkit.com/javatutors/re.shtml" >Введение в регулярные выражения</a><br />
Быстрое введение в основы работы с регулярными выражениямии паттернами. Содержит простые примеры на javascript.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://javascriptkit.com/javatutors/re.shtml" ><img src="http://ddev.ru/wp-content/uploads/2009/07/intro-guide-regex.png" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.ibm.com/developerworks/aix/library/au-regexp/?S_TACT=105AGX59&amp;S_CMP=HP&amp;ca=dgr-lnxw57unixexpr" >Знаете ли Вы регулярные выражения</a><br />
У IBM есть отличная статья по регулярным выражения в UNIX системах. Читать обязательно.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://www.ibm.com/developerworks/aix/library/au-regexp/?S_TACT=105AGX59&amp;S_CMP=HP&amp;ca=dgr-lnxw57unixexpr" ><img src="http://ddev.ru/wp-content/uploads/2009/07/know-your-regex.png" alt="Screenshot" /></a></p>
<p><a target="_blank" href="http://ddev.ru/goto/http://www.codinghorror.com/blog/archives/001016.html" >Регулярные Выражения: две проблемы</a><br />
Джеф Этвуд (со-основатель <a target="_blank" href="http://ddev.ru/goto/http://www.stackoverflow.com/" >Stackoverflow</a>), показывает на практике, как используются регулярные выражения. Знание <em>где</em> и <em>как</em> использовать regex иногда очень полезно, и Джеф показывает примеры эффективного использования регулярных выражений.</p>
<p class="showcase"><a target="_blank" href="http://ddev.ru/goto/http://www.codinghorror.com/blog/archives/001016.html" ><img src="http://ddev.ru/wp-content/uploads/2009/07/2-problems.png" alt="Screenshot" /></a></p>
<h4>Об авторе</h4>
<p><em>Глен Стансберри <em>(Glen Stansberry)</em>, разработчик и блоггер. В его блоге <a target="_blank" href="http://ddev.ru/goto/http://webjackalope.com/" title="creative web development" >WebJackalope</a> можно найти много статей по тематике веб разработок. А также можно следовать за ним в твиттере: <a target="_blank" href="http://ddev.ru/goto/http://www.twitter.com/webjackalope" >@webjackalope</a>.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://ddev.ru/188/putevoditel-po-regulyarnym-vyrazheniyam-instrumenty-i-instrukcii/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>окошки с затемнением на jquery</title>
		<link>http://ddev.ru/116/okoshki-s-zatemneniem-na-jquery/</link>
		<comments>http://ddev.ru/116/okoshki-s-zatemneniem-na-jquery/#comments</comments>
		<pubDate>Fri, 01 May 2009 20:01:29 +0000</pubDate>
		<dc:creator>Eugene Che</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[jWin]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[затемнение]]></category>
		<category><![CDATA[окошки]]></category>
		<category><![CDATA[фон]]></category>

		<guid isPermaLink="false">http://ddev.ru/?p=116</guid>
		<description><![CDATA[Доброе всем время суток. Сегодня в этот светлый день (а сегодня 1 мая и действительно уже рассвело, да и у автора этого плагина ДР =) ) показать как быстро и без особых заморочек сделать себе приятно, поставив такую милую и очень удобную штучку, как окошки с затемнением фона на jQuery. Итак, чем-же удобны всплывающие окна? Ответ [...]]]></description>
			<content:encoded><![CDATA[<p>Доброе всем время суток. Сегодня в этот светлый день (а сегодня 1 мая и действительно уже рассвело, да и у автора этого плагина ДР =) ) показать как быстро и без особых заморочек сделать себе приятно, поставив такую милую и очень удобную штучку, как <a href="http://ddev.ru/tag/okoshki/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  окошки">окошки</a> с затемнением фона на <a href="http://ddev.ru/tag/jquery/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  jQuery">jQuery</a>.</p>
<p>Итак, чем-же удобны всплывающие окна? Ответ прост. Это привлекает внимание, это стильно, модно и просто в исполнении. Эти появляющиеся окна по сути похожи на то как работает lightbox, т.е. тоже плавное <a href="http://ddev.ru/tag/zatemnenie/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  затемнение">затемнение</a> фона и появление окна посередине экрана.</p>
<p>Ну и от теории к практике.</p>
<p>Для начала нам нужны следующие файлы: <a href="http://ddev.ru/wp-content/uploads/2009/05/jquery.js" >jquery.js</a>, <a href="http://ddev.ru/wp-content/uploads/2009/05/jwin.css" >jwin.css</a> и <a href="http://ddev.ru/wp-content/uploads/2009/05/jwin.js" >jwin.js</a><br />
<span id="17d217921b601fa106e814e713852a63"></span></p>
<p>И код который вставляется в HEAD файла.<br />
<code><br />
&lt;script type="text/<a href="http://ddev.ru/tag/javascript/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  JavaScript">javascript</a>" src="./<a href="http://ddev.ru/tag/js/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  js">js</a>/jquery.<a href="http://ddev.ru/tag/js/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  js">js</a>"&gt;&lt;/script&gt;<br />
&lt;script type="text/javascript" src="./js/<a href="http://ddev.ru/tag/jwin/"  class="st_tag internal_tag" rel="tag" title="Записи, помеченные с  jWin">jwin</a>.js"&gt;&lt;/script&gt;<br />
&lt;link href="./js/jwin.css" rel="stylesheet" type="text/css" /&gt;</code></p>
<p><code>&lt;script type="text/javascript"&gt;<br />
var cont;<br />
cont = 'Текст сообщения';<br />
function testWindow(){<br />
var w = $.jWin.create({alwaysCentered:true,autoShow:false,<br />
modal:true,overlayOpacity:0.8,overlayColor:'#000',<br />
title: '&lt;strong&gt;Заголовок&lt;/strong&gt;',handleEscape:true<br />
});<br />
w.setContent(cont);<br />
w.show();<br />
}<br />
&lt;/script&gt;<br />
</code></p>
<p>Ссылки формируются как обычно, но плюс onclick=&#187;testWindow();&#187;<br />
Естественно никто не мешает усовершенствовать интерефейс. Это и так переделка окошек от <a target="_blank" href="http://ddev.ru/goto/http://maxantonov.name"  target="_blank">http://maxantonov.name</a> за что ему огромнейшее спасибо.</p>
<p>UPD: было обновление у на сайте у Макса забирайте новую версию, умеет заберать контент через $.get и вставит в .body окна из http:// и из ./file.html</p>
]]></content:encoded>
			<wfw:commentRss>http://ddev.ru/116/okoshki-s-zatemneniem-na-jquery/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Словарь для Google Chrome</title>
		<link>http://ddev.ru/93/slovar-dlya-google-chrome/</link>
		<comments>http://ddev.ru/93/slovar-dlya-google-chrome/#comments</comments>
		<pubDate>Sun, 22 Mar 2009 13:51:29 +0000</pubDate>
		<dc:creator>Eugene Che</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Chrome]]></category>
		<category><![CDATA[yandex ru]]></category>
		<category><![CDATA[перевод]]></category>

		<guid isPermaLink="false">http://ddev.ru/?p=93</guid>
		<description><![CDATA[Вот простая закладка, которую можно добавить в избранное. Как переводить? Выделяете слово на странице Нажимаете на эту закладку 1 javascript:var perevod = window.open&#40;'http://lingvo.yandex.ru/en?text='+window.getSelection&#40;&#41;+'&#38;amp;st_translate=on','Yandex perevod',''&#41;; perevod.focus&#40;&#41;;]]></description>
			<content:encoded><![CDATA[<p>Вот простая закладка, которую можно добавить в избранное.</p>
<p>Как переводить?</p>
<ul>
<li>Выделяете слово на странице</li>
<li>Нажимаете на эту закладку</li>
</ul>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="php" style="font-family:monospace;">javascript<span style="color: #339933;">:</span><span style="color: #000000; font-weight: bold;">var</span> perevod <span style="color: #339933;">=</span> window<span style="color: #339933;">.</span>open<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'http://lingvo.yandex.ru/en?text='</span><span style="color: #339933;">+</span>window<span style="color: #339933;">.</span>getSelection<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">+</span><span style="color: #0000ff;">'&amp;amp;st_translate=on'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'Yandex perevod'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">''</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> perevod<span style="color: #339933;">.</span>focus<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

]]></content:encoded>
			<wfw:commentRss>http://ddev.ru/93/slovar-dlya-google-chrome/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

