Сегодня Google объявила об открытии интерфейса Google AJAX Libraries API. Что это и для чего нужно я в кратце поясню.
Eugene Krymov @Mordovorot
Пользователь
+7
Иногда они возвращаются… снова
6 мин
3.9KСовсем недавно на хабре пользователем bur был опубликован пост про приятные ползунки TrackBar. Они мне понравились своей простотой и возможностью их использования в совокупности с jQuery. Чуть позже был так же пост про слайдер, который определял диапазон времени, но его порицали за большой вес и «тяжесть». Тогда у меня и родилась идея создать на основе TrackBar ползунков для выбора произвольного диапазона времени. Придумано – сделано. И сейчас я представляю свои наработки хабраобщественности.
Итак, было:
![](https://habrastorage.org/getpro/habr/post_images/7b6/386/2fe/7b63862fe50d6f8911a467a33e1c8947.gif)
Стало:
![](https://habrastorage.org/getpro/habr/post_images/908/c23/e7c/908c23e7ca79c1eda20aca01b09961d5.jpg)
Итак, было:
![](https://habrastorage.org/getpro/habr/post_images/7b6/386/2fe/7b63862fe50d6f8911a467a33e1c8947.gif)
Стало:
![](https://habrastorage.org/getpro/habr/post_images/908/c23/e7c/908c23e7ca79c1eda20aca01b09961d5.jpg)
+45
Skype — береженого Бог бережет
2 мин
13K![](http://www.picamatic.com/show/2009/08/14/11/58/4739084_167x167.jpg)
Здраствуйте. Думаю, многие слышали о нашумевшей истории с тем, что skype читает файлы /etc/passwd и ~/.mozilla. Конечно, ничего очень уж плохого в этом нет, и неоднократно обьяснялось, что пароли не лежат /etc/passwd, а размещены в захешенном виде в /etc/shadow, а конфиг фаерфокса он читает для того чтобы определить настройки прокси/расширений и т.п. и т.д. Но все же никаких реальных фактов нет, а посмотреть исходный код, чтобы удостовериться в честности намерий разработчиков, мы не можем. Так что, с этого положения есть несколько выходов:
- Продолжить пользоваться Skype, считая остальных параноиками.
- Отказаться от Skype, и пользоваться открытой альтернативой (OpenWengo например).
- Ограничить доступ Skype к системным ресурсам, и обезопасить себя от неожиданностей.
+37
jQuery для самых маленьких или динамическая загрузка страниц (AJAX)
1 мин
3.5KВ один прекрасный день понадобилось мне сделать динамическую загрузку из базы. До этого я ничего подобного не делал и не интересовался этим вопросом. Я начал искать информацию на эту тему. Нашёл, что нужная мне задача делается при помощи AJAX.
Перерыл очень много различных фреймворков и остановил свой выбор на ныне популярном jQuery. Всё бы хорошо, но принципа работы я сразу не понял, и сходу сделать простую задачу, аля загрузить одну страницу в другую, я не смог. Искал в интернете хоть какую-то помощь. Помог офф. сайт, благо там доков хватает. И вот, разобравшись в этом вопросе, решил сделать небольшой примерчик для «самых маленьких» (для новичков), которые никогда не работали с этой библиотекой.
Для профессионалов он (пример) покажется смешным и простым, но для людей, не имеющим представления что и как и почему — он поможет. Пример снабжен комментариями в коде. В нём показано как загрузить одну страницу в другую, не перезагружая первую, так же немножко прошёлся по базовым основам классов.
Скачать пример можно вот тут
Перерыл очень много различных фреймворков и остановил свой выбор на ныне популярном jQuery. Всё бы хорошо, но принципа работы я сразу не понял, и сходу сделать простую задачу, аля загрузить одну страницу в другую, я не смог. Искал в интернете хоть какую-то помощь. Помог офф. сайт, благо там доков хватает. И вот, разобравшись в этом вопросе, решил сделать небольшой примерчик для «самых маленьких» (для новичков), которые никогда не работали с этой библиотекой.
Для профессионалов он (пример) покажется смешным и простым, но для людей, не имеющим представления что и как и почему — он поможет. Пример снабжен комментариями в коде. В нём показано как загрузить одну страницу в другую, не перезагружая первую, так же немножко прошёлся по базовым основам классов.
Скачать пример можно вот тут
+12
Псевдо-Ajax
2 мин
1.3K— Кросс-пост из моего блога
Веб 2.0 начал плотно входить в умы людей, которые хотят сделать себе сайт. Как частный случай — некоторые люди просто помешаны на технологии Ajax. Требуют использовать её банально везде. Естественно можно попробовать переубедить заказчика, но если это невозможно или не к месту, то можно воспользоваться уловкой, которую я назвал «Псевдо-Ajax».
Веб 2.0 начал плотно входить в умы людей, которые хотят сделать себе сайт. Как частный случай — некоторые люди просто помешаны на технологии Ajax. Требуют использовать её банально везде. Естественно можно попробовать переубедить заказчика, но если это невозможно или не к месту, то можно воспользоваться уловкой, которую я назвал «Псевдо-Ajax».
+37
C#: требования и рекомендации по написанию кода
5 мин
144KНе так давно в комментариях к топику AlexS высказал идею использования соглашения об оформлении на Хабре кода примеров темы .Net написанных на C#.
Я немного поизучал имеющиеся предложения из этих источников:
submain.com/blog/FreeCVBNETCodingGuidelinesEbookDownload.aspx
idesign.net/idesign/DesktopDefault.aspx
и скомпилировал черновик который описывает самые базовые правила оформления кода написанного на C#.
Предлагаю:
— обсудить этот черновик;
— внести в него все необходимые изменения;
— утвердить как стандарт написания C# кода на Хабре.
Более того, предлагаю создать документ, который можно было бы предложить как рекомендации habrahabr comunity для всех других программистов C#.
Под катом вы найдете текст черновика. Предлагаю всем желающим обсудить его и подвергнуть надлежащей правке.
Я немного поизучал имеющиеся предложения из этих источников:
submain.com/blog/FreeCVBNETCodingGuidelinesEbookDownload.aspx
idesign.net/idesign/DesktopDefault.aspx
и скомпилировал черновик который описывает самые базовые правила оформления кода написанного на C#.
Предлагаю:
— обсудить этот черновик;
— внести в него все необходимые изменения;
— утвердить как стандарт написания C# кода на Хабре.
Более того, предлагаю создать документ, который можно было бы предложить как рекомендации habrahabr comunity для всех других программистов C#.
Под катом вы найдете текст черновика. Предлагаю всем желающим обсудить его и подвергнуть надлежащей правке.
+17
Как работают таймеры в JavaScript
2 мин
18KПеревод
Примечание: ниже перевод заметки John Resig «How JavaScript Timers Work», в которой автор jQuery ясно и подробно излагает тонкости работы различных методов отложенного исполнения функций. Мои комментарии по клиентской производительности далее курсивом.
На самом фундаментальном уровне чрезвычайно важно представлять, как работают таймеры в JavaScript. Очень часто работа таймеров кажется противоречащей интуиции в силу того, что все они запущены внутри одного потока. Но давайте начнем с характеристики трех основных функций, которые мы используем, чтобы создавать и управлять нашими таймерами.
Для того чтобы уяснить внутренние аспекты работы таймеров, стоит учесть одну важную деталь, которую стоит осветить: задержка при выполнении таймера не гарантируется. Так как весь JavaScript исполняется в браузере в один поток, то асинхронные события (например, клики мышкой или таймеры) запускаются только по возникновению «окна» в этом основном потоке (обработчики событий и вызываемые функции, фактически, «встраиваются» в основной поток выполнения, подробнее об организации тяжелых вычислений). Лучше всего это можно продемонстрировать с помощью следующей диаграммы:
![Схема работы таймеров в JavaScript Схема работы таймеров в JavaScript](https://habrastorage.org/getpro/habr/post_images/21d/c01/cb0/21dc01cb011b227584c96d3506d09d5f.png)
Рисунок 1. Схема работы таймеров в JavaScript
читать дальше на webo.in →
На самом фундаментальном уровне чрезвычайно важно представлять, как работают таймеры в JavaScript. Очень часто работа таймеров кажется противоречащей интуиции в силу того, что все они запущены внутри одного потока. Но давайте начнем с характеристики трех основных функций, которые мы используем, чтобы создавать и управлять нашими таймерами.
var id = setTimeout(fn, delay);
— создает единичный таймер, срабатывание которого выливается в вызов определенной функции после указанной задержки. Данный метод возвращает уникальный ID, с помощью которого можно в дальнейшем отменить таймер.var id = setInterval(fn, delay);
— похож на предыдущий методsetTimeout
, но совершает вызовы заданной функции постоянно (каждый раз с заданной задержкой), пока не будет отменен.clearInterval(id);
,clearTimeout(id);
— принимают в качестве параметр ID таймера (возвращаемый двумя предыдущими методами) и предотвращают дальнейшие вызовы таймера.
Для того чтобы уяснить внутренние аспекты работы таймеров, стоит учесть одну важную деталь, которую стоит осветить: задержка при выполнении таймера не гарантируется. Так как весь JavaScript исполняется в браузере в один поток, то асинхронные события (например, клики мышкой или таймеры) запускаются только по возникновению «окна» в этом основном потоке (обработчики событий и вызываемые функции, фактически, «встраиваются» в основной поток выполнения, подробнее об организации тяжелых вычислений). Лучше всего это можно продемонстрировать с помощью следующей диаграммы:
![Схема работы таймеров в JavaScript Схема работы таймеров в JavaScript](https://habrastorage.org/getpro/habr/post_images/21d/c01/cb0/21dc01cb011b227584c96d3506d09d5f.png)
Рисунок 1. Схема работы таймеров в JavaScript
читать дальше на webo.in →
+55
Информация
- В рейтинге
- Не участвует
- Откуда
- Санкт-Петербург, Санкт-Петербург и область, Россия
- Дата рождения
- Зарегистрирован
- Активность