<?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>The Rpsl Blog &#187; jquery</title>
	<atom:link href="http://blog.rpsl.info/tag/jquery/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.rpsl.info</link>
	<description></description>
	<lastBuildDate>Sun, 20 May 2012 12:09:21 +0000</lastBuildDate>
	<language>ru</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>WordPress — gallery shorttag highslide</title>
		<link>http://blog.rpsl.info/2010/10/wordpress-gallery-shorttag-highslide/</link>
		<comments>http://blog.rpsl.info/2010/10/wordpress-gallery-shorttag-highslide/#comments</comments>
		<pubDate>Wed, 13 Oct 2010 06:32:14 +0000</pubDate>
		<dc:creator>Rpsl</dc:creator>
				<category><![CDATA[CMS]]></category>
		<category><![CDATA[Полезное]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://blog.rpsl.info/?p=14674</guid>
		<description><![CDATA[Два примера, для решения одной и той же задачи. В первом примере полный идиотизм, во втором хорошее решение. Вот теперь вопрос, почему большая часть всех CMS работает как первый пример. ? Убого: add_filter&#40;'wp_get_attachment_link', 'add_rel'&#41;; &#160; /* * Add rel=&#34;gallery-$id&#34; to attachment links */ &#160; function add_rel &#40; $link &#41; &#123; &#160; global $post; // a mild cheat. group by post id. the gallery_shortcode() $instance // static var would be better, but we can't get to it. $id = $post-&#62;ID; &#160; // First, see if there's already a 'rel' attribute in the link: $atag = preg_match&#40; '#&#60;a \s+(.*?)(rel=([\'&#34;])(.*?)\3)(.*?)&#62;(.*)#i', $link, $matches &#41;; [...]]]></description>
			<content:encoded><![CDATA[<p>Два примера, для решения одной и той же задачи.</p>
<p>В первом примере полный идиотизм, во втором хорошее решение. Вот теперь вопрос, почему большая часть всех CMS работает как первый пример. ?<br />
<span id="more-14674"></span><br />
Убого:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">add_filter<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'wp_get_attachment_link'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'add_rel'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">/*
 * Add rel=&quot;gallery-$id&quot; to attachment links
 */</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">function</span> add_rel <span style="color: #009900;">&#40;</span> <span style="color: #000088;">$link</span> <span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">global</span> <span style="color: #000088;">$post</span><span style="color: #339933;">;</span>
    <span style="color: #666666; font-style: italic;">// a mild cheat. group by post id. the gallery_shortcode() $instance</span>
    <span style="color: #666666; font-style: italic;">// static var would be better, but we can't get to it.</span>
    <span style="color: #000088;">$id</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$post</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">ID</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #666666; font-style: italic;">// First, see if there's already a 'rel' attribute in the link:</span>
    <span style="color: #000088;">$atag</span> <span style="color: #339933;">=</span> <span style="color: #990000;">preg_match</span><span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">'#&lt;a \s+(.*?)(rel=([\'&quot;])(.*?)\3)(.*?)&gt;(.*)#i'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$link</span><span style="color: #339933;">,</span> <span style="color: #000088;">$matches</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;">$atag</span> <span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        <span style="color: #666666; font-style: italic;">// Match found. Let's put Humpty Dumpty back together again:</span>
        <span style="color: #000088;">$quot</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$matches</span> <span style="color: #009900;">&#91;</span> <span style="color: #cc66cc;">3</span> <span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$relval</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$quot</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$matches</span> <span style="color: #009900;">&#91;</span> <span style="color: #cc66cc;">4</span> <span style="color: #009900;">&#93;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">&quot; gallery-<span style="color: #006699; font-weight: bold;">{$id}</span>&quot;</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$quot</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$before</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$matches</span> <span style="color: #009900;">&#91;</span> <span style="color: #cc66cc;">1</span> <span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$after</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$matches</span> <span style="color: #009900;">&#91;</span> <span style="color: #cc66cc;">5</span> <span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$rest</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$matches</span> <span style="color: #009900;">&#91;</span> <span style="color: #cc66cc;">6</span> <span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
        <span style="color: #000088;">$link</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;&lt;/a&gt;&lt;a <span style="color: #006699; font-weight: bold;">{$before}</span>rel=<span style="color: #006699; font-weight: bold;">{$relval}</span><span style="color: #006699; font-weight: bold;">{$after}</span>&gt;<span style="color: #006699; font-weight: bold;">{$rest}</span>&quot;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
    <span style="color: #b1b100;">else</span>
    <span style="color: #009900;">&#123;</span>
        <span style="color: #000088;">$atag</span> <span style="color: #339933;">=</span> <span style="color: #990000;">preg_match</span><span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">'#&lt;/a&gt;&lt;a \s+(.*?)&gt;(.*)#i'</span><span style="color: #339933;">,</span> <span style="color: #000088;">$link</span><span style="color: #339933;">,</span> <span style="color: #000088;">$matches</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;">$atag</span> <span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span>
            <span style="color: #666666; font-style: italic;">// This is a much simpler reassembly</span>
            <span style="color: #000088;">$innards</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$matches</span> <span style="color: #009900;">&#91;</span> <span style="color: #cc66cc;">1</span> <span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
            <span style="color: #000088;">$rest</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$matches</span> <span style="color: #009900;">&#91;</span> <span style="color: #cc66cc;">2</span> <span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
            <span style="color: #000088;">$relval</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;gallery-<span style="color: #006699; font-weight: bold;">{$id}</span>&quot;</span><span style="color: #339933;">;</span>
            <span style="color: #000088;">$link</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;&lt;/a&gt;&lt;a <span style="color: #006699; font-weight: bold;">{$innards}</span> rel='<span style="color: #006699; font-weight: bold;">{$relval}</span>'&gt;<span style="color: #006699; font-weight: bold;">{$rest}</span>&quot;</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span>
    <span style="color: #009900;">&#125;</span>
    <span style="color: #b1b100;">return</span> <span style="color: #000088;">$link</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Нормально:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">function</span> gallery_image_higslide<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> gallery <span style="color: #339933;">=</span> $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'.gallery'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">find</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'a'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    $.<span style="color: #660066;">each</span><span style="color: #009900;">&#40;</span> gallery<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: #003366; font-weight: bold;">var</span> img <span style="color: #339933;">=</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;">find</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'img'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span> $<span style="color: #009900;">&#40;</span>img<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">size</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&gt;</span> <span style="color: #CC0000;">0</span> <span style="color: #339933;">&amp;&amp;</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;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'onclick'</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> undefined <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;">addClass</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'highslide-image'</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; font-weight: bold;">return</span> hs.<span style="color: #660066;">expand</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: #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: #009900;">&#125;</span>
&nbsp;
$<span style="color: #009900;">&#40;</span>document<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">ready</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>
    gallery_image_higslide<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></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://blog.rpsl.info/2010/10/wordpress-gallery-shorttag-highslide/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Плагины для jQuery (жесть)</title>
		<link>http://blog.rpsl.info/2009/10/plaginy-dlya-jquery-zhest/</link>
		<comments>http://blog.rpsl.info/2009/10/plaginy-dlya-jquery-zhest/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 12:48:31 +0000</pubDate>
		<dc:creator>Rpsl</dc:creator>
				<category><![CDATA[Заметки]]></category>
		<category><![CDATA[Ajax]]></category>
		<category><![CDATA[habrahabr]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[люди твари.]]></category>

		<guid isPermaLink="false">http://blog.rpsl.info/?p=430</guid>
		<description><![CDATA[Читая разные блоги и соц.сети (не буду фамильярничать), всё чаще и чаще натыкаюсь на посты в виде &#171;n Свежих плагинов для jQuery/mooTols/&#8230;&#171;. Данные обзоры представляют из себя говноподборку, без конкретной тематики: Фотогалерея на jQuery. Выпадающее меню на jQuery. Галимая шняга на jQuery Помойка. Добавьте себе в Google Reader &#8212; http://www.ajaxrain.com/ и будет вам счатье и куча свежих плагинов.]]></description>
			<content:encoded><![CDATA[<p>Читая разные блоги и соц.сети (не буду фамильярничать), всё чаще и чаще натыкаюсь на посты в виде &#171;<strong>n Свежих плагинов для jQuery/mooTols/&#8230;</strong>&#171;.</p>
<p>Данные обзоры представляют из себя говноподборку, без конкретной тематики:</p>
<ul>
<blockquote>
<li>Фотогалерея на jQuery.</li>
<li>Выпадающее меню на jQuery.</li>
<li>Галимая шняга на jQuery</li>
</blockquote>
</ul>
<p><img class="aligncenter size-full wp-image-435 colorbox-430" src="http://blog.rpsl.info/wp-content/uploads/2009/10/2981496331_087fa810a4.jpg" alt="2981496331_087fa810a4" width="375" height="500" /><br />
Помойка.</p>
<p>
Добавьте себе в Google Reader &#8212; <a href="http://www.ajaxrain.com/">http://www.ajaxrain.com/</a> и будет вам счатье и куча свежих плагинов.
</p>
<p><!--wsa:adsense-post--></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rpsl.info/2009/10/plaginy-dlya-jquery-zhest/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jQuery + label tag</title>
		<link>http://blog.rpsl.info/2009/07/jquery-label-tag/</link>
		<comments>http://blog.rpsl.info/2009/07/jquery-label-tag/#comments</comments>
		<pubDate>Thu, 02 Jul 2009 09:54:07 +0000</pubDate>
		<dc:creator>Rpsl</dc:creator>
				<category><![CDATA[Заметки]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jquery]]></category>

		<guid isPermaLink="false">http://blog.rpsl.info/?p=284</guid>
		<description><![CDATA[Очередной, очень маленький, но ужасно удобный trick. Суть очень простая, он автоматически делает  одинаковый width для всех элементов &#60;label&#62;. Изначально форма выглядит примерно вот так: Добавляем стиль: label, input&#91;type=&#34;text&#34;&#93;&#123; float:left; display:block; &#125; label&#123; margin-right: 5px; &#125; .field&#123; width:100%; overflow:auto; margin:5px 0px; &#125; Добавляем javascript: $&#40;document&#41;.ready&#40;function&#40;&#41; &#123; var max = 0; $&#40;&#34;label&#34;&#41;.each&#40;function&#40;&#41;&#123; if &#40;$&#40;this&#41;.width&#40;&#41; &#62; max&#41; max = $&#40;this&#41;.width&#40;&#41;; &#125;&#41;; $&#40;&#34;label&#34;&#41;.width&#40;max&#41;; &#125;&#41;; И вуаля:]]></description>
			<content:encoded><![CDATA[<p>Очередной, очень маленький, но ужасно удобный trick.</p>
<p>Суть очень простая, он автоматически делает  одинаковый width для всех элементов &lt;label&gt;.</p>
<p>Изначально форма выглядит примерно вот так:</p>
<p><a href="http://blog.rpsl.info/wp-content/uploads/2009/07/before.png"><img class="alignnone size-full wp-image-285 colorbox-284" src="http://blog.rpsl.info/wp-content/uploads/2009/07/before.png" alt="before" width="260" height="97" /></a></p>
<p>Добавляем стиль:</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;">label<span style="color: #00AA00;">,</span> input<span style="color: #00AA00;">&#91;</span>type<span style="color: #00AA00;">=</span><span style="color: #ff0000;">&quot;text&quot;</span><span style="color: #00AA00;">&#93;</span><span style="color: #00AA00;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">float</span><span style="color: #00AA00;">:</span><span style="color: #000000; font-weight: bold;">left</span><span style="color: #00AA00;">;</span>
    <span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span><span style="color: #993333;">block</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
label<span style="color: #00AA00;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">margin-right</span><span style="color: #00AA00;">:</span> <span style="color: #933;">5px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
.field<span style="color: #00AA00;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">width</span><span style="color: #00AA00;">:</span><span style="color: #933;">100%</span><span style="color: #00AA00;">;</span>
    <span style="color: #000000; font-weight: bold;">overflow</span><span style="color: #00AA00;">:</span><span style="color: #993333;">auto</span><span style="color: #00AA00;">;</span>
    <span style="color: #000000; font-weight: bold;">margin</span><span style="color: #00AA00;">:</span><span style="color: #933;">5px</span> <span style="color: #933;">0px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>Добавляем <strong>javascript</strong>:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;">$<span style="color: #009900;">&#40;</span>document<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">ready</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> max <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span>
    $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;label&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">each</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><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">width</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&gt;</span> max<span style="color: #009900;">&#41;</span>
            max <span style="color: #339933;">=</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;">width</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;">&#40;</span><span style="color: #3366CC;">&quot;label&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">width</span><span style="color: #009900;">&#40;</span>max<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></pre></div></div>

<p>И вуаля:</p>
<p><a href="http://blog.rpsl.info/wp-content/uploads/2009/07/after.png"><img class="alignnone size-full wp-image-286 colorbox-284" src="http://blog.rpsl.info/wp-content/uploads/2009/07/after.png" alt="after" width="260" height="96" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rpsl.info/2009/07/jquery-label-tag/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

