<?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>fxposter&#039;s wave &#187; Ajax</title>
	<atom:link href="http://blog.fxposter.org/tag/ajax/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.fxposter.org</link>
	<description>Stories about Ruby, JavaScript, Objective-C and other cool tools</description>
	<lastBuildDate>Sun, 30 Oct 2011 20:00:54 +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>jQuery, AJAX и CP1251</title>
		<link>http://blog.fxposter.org/2008/11/28/jquery-ajax-and-cp1251/</link>
		<comments>http://blog.fxposter.org/2008/11/28/jquery-ajax-and-cp1251/#comments</comments>
		<pubDate>Thu, 27 Nov 2008 22:05:15 +0000</pubDate>
		<dc:creator>fxposter</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[Программирование]]></category>
		<category><![CDATA[Работа]]></category>
		<category><![CDATA[Ajax]]></category>
		<category><![CDATA[CP1251]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://blog.fxposter.org/?p=585</guid>
		<description><![CDATA[Да, да, я знаю, что в наш век все уже давно перешли на использование utf-8 при построении веб-сайтов, но остались еще и такие, которые пользуються &#8220;допотопными&#8221;, &#8220;отстойными&#8221;, и вообще &#8220;не-тру&#8221; кодировками типа CP1251 (также известной как Windows-1251), KOI8-R и прочих. Ни для кого ни секрет, что кодировкой получаемых через Ajax данных по-умолчанию принимается UTF-8. Не [...]]]></description>
			<content:encoded><![CDATA[<p>Да, да, я знаю, что в наш век все уже давно перешли на использование utf-8 при построении веб-сайтов, но остались еще и такие, которые пользуються &#8220;допотопными&#8221;, &#8220;отстойными&#8221;, и вообще &#8220;не-тру&#8221; кодировками типа CP1251 (также известной как Windows-1251), KOI8-R и прочих.</p>
<p>Ни для кого ни секрет, что кодировкой получаемых через Ajax данных по-умолчанию принимается UTF-8. Не все знают, что это умолчание можно изменить, указав кодировку явно через заголовок &#8220;Content-Type: text/html; charset=cp1251&#8243;. Сегодня вот столкнулся с интересным багом, на который убил довольно много времени.</p>
<p>Сервер отдает некоторый текст по запросу (ajax) в кодировке CP1251, предварительно установив соответствующий заголовок - &#8220;Content-Type: text/html; charset=cp1251&#8243;. На клиенте использовалась библиотека jQuery:</p>
<pre><code class="javascript">$('#books').load('books.php', {action: 'list'});</code></pre>
<p>Всё работало замечательно&#8230; До тех пор, пока я не открыл страничку в IE7. Как ни странно, но ничего не загрузилось. После длительных раздумий, установки alert-ов куда нужно, и куда нет код был заменен следующим кодом:</p>
<pre><code class="javascript">$.ajax({
  method: 'get',
  url: 'books.php',
  success: function(data) {
    $('#books').html(data);
  },
  error: function(xhr, textStatus, errorThrown) {
    alert(textStatus);
  },
  data: {action: 'list'}
});</code></pre>
<p>В FF всё продолжало работать, а вот IE начал выдавать странную надпись &#8220;parsererror&#8221;. Гугление никаких результатов не дало - ни одного похожего случая&#8230; После, примерно, 10 минут попыток &#8220;запустить&#8221; страничку в IE, что-то меня дернуло посмотреть на серверный код. Глаза сразу упали на строку установки Content-Type-а. Недолго думая, я поставил charset=utf-8, и, о чудо, IE загрузил всё как положено (правда в неправильной кодировке, но всё же - уже плюс). Догадавшись в чем может быть дело, я установил кодировку в &#8220;windows-1251&#8243;, после чего всё заработало на ура.</p>
<p>Собственно, мораль сей басни такова - юзайте, люди, юникод, и будет вам счастье.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.fxposter.org/2008/11/28/jquery-ajax-and-cp1251/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Используем Google AJAX Libraries API</title>
		<link>http://blog.fxposter.org/2008/05/29/using-google-ajax-libraries-api/</link>
		<comments>http://blog.fxposter.org/2008/05/29/using-google-ajax-libraries-api/#comments</comments>
		<pubDate>Thu, 29 May 2008 00:41:15 +0000</pubDate>
		<dc:creator>fxposter</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[Программирование]]></category>
		<category><![CDATA[Ajax]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://blog.fxposter.org/?p=433</guid>
		<description><![CDATA[Авось, кто-то еще не догадался&#8230; :) Самый простой способ использования своих скриптов совместно с Google AJAX Libraries API: google.load("jquery", "1"); google.setOnLoadCallback(function() { $('&#60;script type="text/javascript" src="_url_вашего_скрипта_"&#62;&#60;/script&#62;').appendTo('head'); $('&#60;script type="text/javascript" src="_url_вашего_другого_скрипта_"&#62;&#60;/script&#62;').appendTo('head'); // ... }); Аналогичным образом подключаются, например, плагины для jQuery.]]></description>
			<content:encoded><![CDATA[<p>Авось, кто-то еще не догадался&#8230; :)</p>
<p>Самый простой способ использования своих скриптов совместно с Google AJAX Libraries API:</p>
<pre><code class="javascript">google.load("jquery", "1");

google.setOnLoadCallback(function() {
  $('&lt;script type="text/javascript" src="_url_вашего_скрипта_"&gt;&lt;/script&gt;').appendTo('head');
  $('&lt;script type="text/javascript" src="_url_вашего_другого_скрипта_"&gt;&lt;/script&gt;').appendTo('head');
  // ...
});</code></pre>
<p>Аналогичным образом подключаются, например, плагины для jQuery.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.fxposter.org/2008/05/29/using-google-ajax-libraries-api/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Презентация Web 2.0 портала</title>
		<link>http://blog.fxposter.org/2007/09/29/trashbox/</link>
		<comments>http://blog.fxposter.org/2007/09/29/trashbox/#comments</comments>
		<pubDate>Sat, 29 Sep 2007 07:00:29 +0000</pubDate>
		<dc:creator>fxposter</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[Мобильная жизнь]]></category>
		<category><![CDATA[Ajax]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web 2.0]]></category>

		<guid isPermaLink="false">http://blog.fxposter.org/2007/09/28/trashbox/</guid>
		<description><![CDATA[Сегодня впервые побывал в нашем Start Up Coffee. Причиной моего сегодняшнего похода туда была презентация очередного Web 2.0 портала Trashbox.ru. Сейчас портал находится в конечной стадии разработки, а открытие должно произойти 8-го октября. Начну издалека&#8230; О портале я знал давно, еще с самого начала разработки (было это, если я не ошибаюсь, около полутора лет назад), [...]]]></description>
			<content:encoded><![CDATA[<p>Сегодня впервые побывал в нашем <a href="http://start-up-coffee.blogspot.com/">Start Up Coffee</a>. Причиной моего сегодняшнего похода туда была презентация очередного Web 2.0 портала <a href="http://www.trashbox.ru/">Trashbox.ru</a>. Сейчас портал находится в конечной стадии разработки, а открытие должно произойти 8-го октября.</p>
<p>Начну издалека&#8230; О портале я знал давно, еще с самого начала разработки (было это, если я не ошибаюсь, около полутора лет назад), его тематика - мобильные телефоны, программы для них, их обзоры и т.д. Сейчас проект наконец-то стал приобретать более-менее законченный вид и можно уже делать первые выводы.</p>
<p>Трэшбокс будет собой представлять некую смесь хабрахабра (блоги, коллективные блоги, комментарии, рейтинги, коментарии, голосования и прочее) и DimonVideo (файловый архив), приправленную <strong>офигенной</strong>, по словам разработчика, <strong>системой навигации</strong> (ой ли&#8230;), <strong>малым размером страниц</strong> и офигеннейшим (по крайней мере по слайдам) дизайном.</p>
<p>Я не зря выделил навигацию и размер страниц - почти вся презентация была построена на том, что аналогичные сайты обладают очень плохой навигацией по меню, неудобно искать какую-то определенную программу/статью, да и к тому же очень много весят. В трэшбоксе все иначе. Страница представляет из себя практически сплошной JavaScript, и довольно много работы выполняется на клиентской машине по постройке страницы, что позволяет существенно (по словам разработчиков - в 5 раз) уменьшить обьем передаваемых данных. Новые страницы подгружаются через Ajax, что также экономит траффик. Насчет навигации - 100% ничего сказать пока не могу, рабочей версии показано не было, а из всех слайдов всего на одном был скриншот странички портала. Главное меню состоит из 4-х разделов, из них был показан, насколько я помню, раздел &#8220;Программы&#8221;. Под главным меню находятся 2 облака тегов/категорий (теги фиксированные, пользователем не добавляются, добавлять их могут только админы): типы программ и ОС. Можно выбрать сразу несколько подразделов из каждого облака, например, ((ICQ + Browser) + (Symbian 8 + Windows Mobile 6)), и программы, соответствующей тематики и работающие в указанных ОС будут динамически подгружены в текущую страницу. По рассказам - смотрится интересно (хотя отсутствие пользовательских тегов огорчает), а на практике - <strong>возможно</strong> будет удобно. Поживем - увидим.</p>
<p>Все это касалось версии &#8220;для компьютеров&#8221;, еще планируется версия для телефонов, но о ней пока что почти ничего не известно кроме того, что wap/wml посланы нафиг, а разработка ведется под телефоны с поддержкой HTML.</p>
<p>Планы проекта - до НГ собрать 10000 хостов в сутки. Ну что ж - пожелаем удачи и будем с нетерпением ждать открытия.</p>
<p>Это была, так сказать, &#8220;информация для прессы&#8221;. Теперь хочу посвятить в некоторые технические детали, они в презентации почему-то упомянуты не были, но тем не менее, мне они известны. Проект пишется на PHP. Все пишется с нуля - и JS и PHP-коды. Фреймворки не используются за их &#8220;ненадобностью&#8221;. Комментарии разработчика явно показывают, что человек хочет и изобретает в очередной раз колесо: &#8220;У нас 120-140кб JS-кода, фреймворки нам только бы увеличили размеры этого кода и на капельки бы нам не помогли.&#8221;, &#8220;Не нужен мне этот ваш Zend Framework, у меня свой фреймворк - тут все зашибись, а питон и руби - вообще х##ня&#8221;.</p>
<p>Вывод у меня один - в будущее проекта я не верю. И буду очень рад, если мое мнение окажется ошибочным. А по поводу 10000 хостов в сутки - по-моему, за 3 месяца это просто невозможно.</p>
<p><strong>UPD</strong>: Слайды с презентации можно посмотреть <a href="http://blog.fxposter.org/wp-content/uploads/2007/09/trashbox/">здесь</a>.</p>
<p><strong>UPD2</strong>: Появилось еще <a href="http://video.google.com/videoplay?docid=4889926471175888099&amp;hl=en">видео</a> с презентации.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.fxposter.org/2007/09/29/trashbox/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Page Caching using disk: enhanced

Served from: blog.fxposter.org @ 2012-02-10 05:11:39 -->
