<?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; js</title>
	<atom:link href="http://www.job-blog.bullgare.ru/tag/js/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.job-blog.bullgare.ru</link>
	<description>о программировании и работе</description>
	<lastBuildDate>Fri, 03 Feb 2012 09:42:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>Вычисление посещённых ссылок пользователя с помощью Javascript и DOM Level 2</title>
		<link>http://www.job-blog.bullgare.ru/2009/08/%d0%b2%d1%8b%d1%87%d0%b8%d1%81%d0%bb%d0%b5%d0%bd%d0%b8%d0%b5-%d0%bf%d0%be%d1%81%d0%b5%d1%89%d1%91%d0%bd%d0%bd%d1%8b%d1%85-%d1%81%d1%81%d1%8b%d0%bb%d0%be%d0%ba-%d0%bf%d0%be%d0%bb%d1%8c%d0%b7%d0%be/</link>
		<comments>http://www.job-blog.bullgare.ru/2009/08/%d0%b2%d1%8b%d1%87%d0%b8%d1%81%d0%bb%d0%b5%d0%bd%d0%b8%d0%b5-%d0%bf%d0%be%d1%81%d0%b5%d1%89%d1%91%d0%bd%d0%bd%d1%8b%d1%85-%d1%81%d1%81%d1%8b%d0%bb%d0%be%d0%ba-%d0%bf%d0%be%d0%bb%d1%8c%d0%b7%d0%be/#comments</comments>
		<pubDate>Wed, 19 Aug 2009 07:15:24 +0000</pubDate>
		<dc:creator>bullgare</dc:creator>
				<category><![CDATA[javascript]]></category>
		<category><![CDATA[Программирование]]></category>
		<category><![CDATA[currentStyle]]></category>
		<category><![CDATA[getComputedStyle]]></category>
		<category><![CDATA[js]]></category>

		<guid isPermaLink="false">http://www.job-blog.bullgare.ru/?p=179</guid>
		<description><![CDATA[Для этого нам нужен метод объекта window &#8211; getComputedStyle. В ИЕ как всегда всё непросто &#8211; у него есть свойство currentStyle элемента. Ниже &#8211; пример (ну его лучше бы немного усложнить &#8211; не нужен нам лишний div в дереве). Пример. Вычисление посещённых ссылок &#60;style&#62; a {color: rgb(255,0,0);} a:visited {color: rgb(0,255,0);} &#60;/style&#62; &#60;div style="display:none;"&#62; &#60;a href="http://12331231223.ru"&#62;1&#62;/a&#62; [...]]]></description>
			<content:encoded><![CDATA[<p>Для этого нам нужен <a href="http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-OverrideAndComputed">метод объекта window &#8211; getComputedStyle</a>. В ИЕ как всегда всё непросто &#8211; у него есть <a href="http://msdn.microsoft.com/en-us/library/aa703980%28VS.85%29.aspx">свойство currentStyle элемента</a>.<br />
<span id="more-179"></span><br />
Ниже &#8211; пример (ну его лучше бы немного усложнить &#8211; не нужен нам лишний div в дереве).</p>
<blockquote><p>Пример. Вычисление посещённых ссылок</p></blockquote>
<pre class="code">
&lt;style&gt;
a {color: rgb(255,0,0);}
a:visited {color: rgb(0,255,0);}
&lt;/style&gt;

&lt;div style="display:none;"&gt;
&lt;a href="http://12331231223.ru"&gt;1&gt;/a&gt;
&lt;a href="http://ya.ru">2&gt;/a&gt;
&lt;/div&gt;

&lt;script&gt;
//в ИЕ такого метода нету - декорируем
//http://snipplr.com/view/13523/getcomputedstyle-for-ie/
if (!window.getComputedStyle)
{
    window.getComputedStyle = function(el, pseudo)
	{
        this.el = el;
        this.getPropertyValue = function(prop)
		{
            var re = /(\-([a-z]){1})/g;
            if (prop == 'float') prop = 'styleFloat';
            if (re.test(prop))
			{
                prop = prop.replace(re, function (){return arguments[2].toUpperCase();});
            }
            return el.currentStyle[prop] ? el.currentStyle[prop] : null;
        }
        return this;
    }
}

var links = document.getElementsByTagName('a');
var msg = '';
for (var i = 0; i < links.length; ++i)
{
	var link = links[i];
	var computedStyle = getComputedStyle(link, null);
	var visited = false;
	var color = computedStyle.getPropertyValue('color');
	if (color == 'rgb(0, 255, 0)'/*ff*/ || color == 'rgb(0,255,0)'/*ie*/ || color == '#00ff00'/*opera*/)
		visited = true;
	msg += link.href + ' ' + ((visited) ? 'visited' : 'not visited') + '\n';
}
alert (msg);
&lt;/script&gt;
</pre>
<p>Есть у браузеров как всегда забавные особенности - при получении вычисленного цвета</p>
<ul>
<li>Firefox всегда возвращает строку вида '<em>rgb(0, 255, 0)</em>'</li>
<li>Internet Explorer - ровно то, что записано в стиле: написали '<em>rgb(0,255,0)</em>' - получили их "на выходе", написали '<em>#0f0</em>' - ровно эту же строку и получили (хотя если написать в стилях '<em>rgb(0, 255, 0)</em>', то получим '<em>rgb(0,255,0)</em>', т.е. пробелы видимо режет)</li>
<li>Opera возвращает строку вида '<em>#00ff00</em>'</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.job-blog.bullgare.ru/2009/08/%d0%b2%d1%8b%d1%87%d0%b8%d1%81%d0%bb%d0%b5%d0%bd%d0%b8%d0%b5-%d0%bf%d0%be%d1%81%d0%b5%d1%89%d1%91%d0%bd%d0%bd%d1%8b%d1%85-%d1%81%d1%81%d1%8b%d0%bb%d0%be%d0%ba-%d0%bf%d0%be%d0%bb%d1%8c%d0%b7%d0%be/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Создание WYSIWYG-редактора</title>
		<link>http://www.job-blog.bullgare.ru/2009/07/%d1%81%d0%be%d0%b7%d0%b4%d0%b0%d0%bd%d0%b8%d0%b5-wysiwyg-%d1%80%d0%b5%d0%b4%d0%b0%d0%ba%d1%82%d0%be%d1%80%d0%b0/</link>
		<comments>http://www.job-blog.bullgare.ru/2009/07/%d1%81%d0%be%d0%b7%d0%b4%d0%b0%d0%bd%d0%b8%d0%b5-wysiwyg-%d1%80%d0%b5%d0%b4%d0%b0%d0%ba%d1%82%d0%be%d1%80%d0%b0/#comments</comments>
		<pubDate>Sun, 26 Jul 2009 11:22:46 +0000</pubDate>
		<dc:creator>bullgare</dc:creator>
				<category><![CDATA[javascript]]></category>
		<category><![CDATA[Программирование]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[wysiwyg]]></category>
		<category><![CDATA[Ссылки]]></category>

		<guid isPermaLink="false">http://www.job-blog.bullgare.ru/?p=57</guid>
		<description><![CDATA[http://xpoint.ru/know-how/WYSIWYG/TrueJavaScriptEditor &#8211; статья о том, как написать wysiwyg-редактор. Не всё правильно, но для начала очень даже ничего. http://www.mozilla.org/editor/midas-spec.html &#8211; список команд и правила их использования. Некоторые особенности реализации designMode-элементов в firefox. http://msdn.microsoft.com/en-us/library/ms536419(VS.85).aspx &#8211; execCommand в internetExplorer http://msdn.microsoft.com/en-us/library/ms537834(VS.85).aspx &#8211; некоторый туториал по написанию wysiwyg-редактора под internetExplorer от MicroSoft;) http://code.google.com/p/jwysiwyg/ &#8211; очень простой wysiwyg-редактор, использующий библиотеку jQuery.]]></description>
			<content:encoded><![CDATA[<p><a href="http://xpoint.ru/know-how/WYSIWYG/TrueJavaScriptEditor">http://xpoint.ru/know-how/WYSIWYG/TrueJavaScriptEditor</a> &#8211; статья о том, как написать wysiwyg-редактор. Не всё правильно, но для начала очень даже ничего.</p>
<p><a href="http://www.mozilla.org/editor/midas-spec.html">http://www.mozilla.org/editor/midas-spec.html</a> &#8211; список команд и правила их использования. Некоторые особенности реализации designMode-элементов в firefox.</p>
<p><a href="http://msdn.microsoft.com/en-us/library/ms536419%28VS.85%29.aspx">http://msdn.microsoft.com/en-us/library/ms536419(VS.85).aspx</a> &#8211; execCommand в internetExplorer</p>
<p><a href="http://msdn.microsoft.com/en-us/library/ms537834%28VS.85%29.aspx">http://msdn.microsoft.com/en-us/library/ms537834(VS.85).aspx</a> &#8211; некоторый туториал по написанию wysiwyg-редактора под internetExplorer от MicroSoft;) </p>
<p><a href="http://code.google.com/p/jwysiwyg/">http://code.google.com/p/jwysiwyg/</a> &#8211; очень простой wysiwyg-редактор, использующий библиотеку jQuery.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.job-blog.bullgare.ru/2009/07/%d1%81%d0%be%d0%b7%d0%b4%d0%b0%d0%bd%d0%b8%d0%b5-wysiwyg-%d1%80%d0%b5%d0%b4%d0%b0%d0%ba%d1%82%d0%be%d1%80%d0%b0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Справочники по Javascript</title>
		<link>http://www.job-blog.bullgare.ru/2009/07/%d1%81%d0%bf%d1%80%d0%b0%d0%b2%d0%be%d1%87%d0%bd%d0%b8%d0%ba%d0%b8-%d0%bf%d0%be-javascript/</link>
		<comments>http://www.job-blog.bullgare.ru/2009/07/%d1%81%d0%bf%d1%80%d0%b0%d0%b2%d0%be%d1%87%d0%bd%d0%b8%d0%ba%d0%b8-%d0%bf%d0%be-javascript/#comments</comments>
		<pubDate>Sun, 26 Jul 2009 11:15:30 +0000</pubDate>
		<dc:creator>bullgare</dc:creator>
				<category><![CDATA[javascript]]></category>
		<category><![CDATA[Программирование]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[manual]]></category>
		<category><![CDATA[мануал]]></category>
		<category><![CDATA[справочник]]></category>
		<category><![CDATA[Ссылки]]></category>

		<guid isPermaLink="false">http://www.job-blog.bullgare.ru/?p=48</guid>
		<description><![CDATA[http://javascript.ru/manual &#8211; справочник; сайт очень добротный, с подробным объяснением, где, что и зачем (http://javascript.ru/manual.zip) &#8211; оффлайн-версия https://developer.mozilla.org/en/Core_JavaScript_1.5_Guide (англ.) &#8211; подробные справочники от Mozilla не очень подробные справочники, зато с алфавитным указателем: http://www.devguru.com/technologies/ecmascript/quickref/javascript_index.html (англ.) &#8211; по ecmascript http://devguru.com/technologies/javascript/index.asp (англ.) &#8211; по клиентскому javascript-у http://www.javascriptkit.com/jsref/ (англ.)]]></description>
			<content:encoded><![CDATA[<p><a href="http://javascript.ru/manual">http://javascript.ru/manual</a> &#8211; справочник; сайт очень добротный, с подробным объяснением, где, что и зачем</p>
<ul>
<li>(<a href="http://javascript.ru/manual.zip">http://javascript.ru/manual.zip</a>) &#8211; оффлайн-версия</li>
</ul>
<p><a href="https://developer.mozilla.org/en/Core_JavaScript_1.5_Guide">https://developer.mozilla.org/en/Core_JavaScript_1.5_Guide</a> (англ.) &#8211; подробные справочники от Mozilla</p>
<p>не очень подробные справочники, зато с алфавитным указателем:</p>
<p><a href="http://www.devguru.com/technologies/ecmascript/quickref/javascript_index.html">http://www.devguru.com/technologies/ecmascript/quickref/javascript_index.html</a> (англ.) &#8211; по ecmascript</p>
<p><a href="http://devguru.com/technologies/javascript/index.asp">http://devguru.com/technologies/javascript/index.asp</a> (англ.) &#8211; по клиентскому javascript-у</p>
<p><a href="http://www.javascriptkit.com/jsref/">http://www.javascriptkit.com/jsref/</a> (англ.)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.job-blog.bullgare.ru/2009/07/%d1%81%d0%bf%d1%80%d0%b0%d0%b2%d0%be%d1%87%d0%bd%d0%b8%d0%ba%d0%b8-%d0%bf%d0%be-javascript/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

