Яндекс.Метрика
Поиск по тегу

JavaScript


Найдено: 33 записи

Ни о чём

Кривые дракона и черепашка

кривые дракона
Существует замечательное и буквально завораживающее семейство фрактальных кривых — кривые дракона. Кто не знаком с ними принцип их построения проще всего объяснить при помощи полоски бумаги. Итак, возьмём полоску бумаги и сложим её несколько раз пополам, а затем развернем так чтобы между углами сгиба образовались прямые углы. В итоге мы получим кривую дракона. Поскольку толщина сложенной полоски каждый раз удваивается, а длина отдельного звена уменьшается в два раза, то мы не можем получить таким наивным способом длинных кривых.
К счастью длинные кривые легко рисуются другим способом, а точнее множеством способов. В частности, в Сети можно встретить рекурсивную программу порождающую кривую дракона достраивая катеты к отрезкам исходной кривой, как гипотенузам. Но я решил поручить это дело черепашке. Поскольку кривая дракона состоит из серии поворотов «налево» и «направо», то черепашка должна уметь только делать шаг в перёд и поворачивать. Главное, что я хотел увидеть — это сплетение кривых дракона. Да! Эти кривые сочетаются между собой в разных и интересных позициях, что кажется невероятным для таких сложных и запутанных кривых.

Песочница

Гракон — гражданский контроль за выборами

Привет Хабровчане!

Какими бы не были ваши политические взгляды (многих уже тошнит от слова «политик»), мало кто сейчас может оставаться равнодушным к тому, что происходит у нас в стране. Каждому из нас, независимо от того, за кого мы будем голосовать, важно, чтобы выборы были максимально честными. Понимая это, пару месяцев назад мы начали писать сайт, который поможет скоординировать наблюдателей, юристов для контроля за выборами — grakon.org.

Javascript

Как вы относитесь к функции eval в JavaScript?

Проголосовал 121 человек. Воздержалось 32 человека.

Песочница

Javascript. Сортировка таблицы

Доброго времени суток, Хабровчане.

Может для большинства здешних обитателей моя статья покажется слишком скучной и «и так понятно», но думаю новичкам будет в чем-то полезной.
Стояла передо мной как-то задача сделать сортировку таблицы по разным колонкам. Данный брались из базы, каждый раз их вытаскивать — накладно, решил задействовать JavaScript.
Были небольшие трудности из-за использования различной стилистики строк в таблице, а именно был разный цвет фона, в зависимости от данных самой таблицы.
Стилистику нарушать было нельзя. Кого заинтересовало, прошу под кат.

Песочница

Альтернативный взгляд на плагин для маски ввода чисел и не только в input и textarea

Вдогонку к опубликованной раннее статье Плагин для маски ввода чисел в input, хотел бы поделиться своим взглядом на решение данной проблемы.

Подробности под Хаброкатом.

Ни о чём

Быстрый старт в разработке дополнений Firefox

Про создание дополнений Firefox я знаю мало, но для того чтобы узнать это немногое мне потребовалось несколько дней. Эти знания мне не довелось пока применить для реальной задачи, и кто знает когда придётся. По теме есть много информации на английском языке, но в силу скудности моего английского эта информация была для меня трудновоспринимаема. Статьи, что я видел на русском, это в основном переводы, в которых много внимания уделяется деталям, но после их прочтения не возникает целостной картины. Моя статья — это попытка создать маленькое, но целостное знание: с чего начать и как с этим можно работать.

Ни о чём

JSS – Google Chrome расширение для встраивания собственного JavaScript и CSS кода в любую веб-страницу

Привет друзья!

Хочу поделиться с вами расширением для Google Chrome, которое я недавно написал. Расширение помогает с легкостью внедрять JavaScript или CSS код в любые веб-страницы. Создавал его в первую очередь для себя, но буду рад, если кому-то пригодится.

Ссылка на расширение

Веб разработка

Давайте разрабатывать UI-элементы правильно

Не так давно у меня кончилось терпение. По началу всякие плагины, а затем различные framework'и начинают «насиловать» HTMLDocument. Что бы понять потерял элемент фокус или нет — они отслеживают событие onclick на HTMLBodyElement или на HTMLDocument. И если некоторые из них обращают внимание на нажатие Taba при потере фокуса, то большая часть вообще игнорирует данный факт.

Реклама

Считаем хэши файлов любого размера прямо в браузере

В сети очень много сайтов для подсчета хэшей (MD5, SHA1, SHA2) файлов, однако, все сервисы, что я смог найти, имеют один и тот же недостаток: размер файла ограничен. Также необходимо сначала загрузить файл на сервер, чтобы получить результат вычислений. Это очень неудобно.

Поэтому я решил создать небольшой сервис, расчет в котором будет происходить непосредственно в браузере пользователя. Нет необходимости загружать файлы на сервер (экономим трафик и время) и появляется возможность работать с файлами любого размера.

Картинка и немного информации под катом

Заработок в Сети

Дао web-программиста

Как ни странно, но в Интернете легче заработать тем, кто умеет писать программный код. Особенно для сайты. Поэтому от себя автор искренне советует всем, кто обладает МАТЕМАТИЧЕСКИМ СКЛАДОМ УМА начать изучать язык программирования. Для веба идеально подходит PHP. Да, сейчас элитные программисты закукарекают о том, что ПоХаПэ для недочеловеков, а Питон/Рубин/Пёрл для богов, шлите их смело. PHP прост и, на данный момент, самый популярный язык для написания сайтов. Идите на торрент-треккер и качайте книги либо видео уроки по всему, что перечислено ниже.

Реклама

Вавилонская Башня

Дамы и господа!
Компания «Oldschool Infundibulum Software» представляет вашему вниманию игру с гордым названием «Вавилонская Башня»!
Для тех, кому надоело работать, или кто хочет сразу увидеть, о чем речь, вот ссылка(работает только в Хроме и ФФ): elegar.ru/tower/

Для тех, кому читать не лень — весь нижеследующий текст.

Javascript

Модульность в JavaScript

Хочу поделиться своим опытом в написании модульного JS. Еще недавно обычно написаны скрипты выглядели аккуратно и упорядоченно, но сейчас в сравнение с модульным разбивкой по файлам это просто ужасно и очень неудобно. Постараюсь показать эту всю красоту на примере модуля «navigation» (AJAX навигация по сайту). Хочу также заметить, что это упрощеная, но не менее действенная система модулей которые уже когда-то предлагали на Хабре, чем и выгодна для применения даже в небольших проектах.

Javascript

JavaScript как язык с утиной типизацией

JavaScript это мощный язык с динамической типизацией и это позволяет писать код с утиной типизацией. В двух словах утиная типизация позволяет выполнять функцию для обьектов которые обладают нужными нам свойствами (т.к. js функицональный язык то и метод является полноправным свойством). Я уверен что многие используют утиную типизацию, но я думаю данная заметка будет все равно интересна некоторому подмножеству множества аудитории хабра. В этой заметке мы проследим эволюцию функции range из работающей только с числами до функции которая работает с любыми обьектами.

Песочница

JavaScript: обработка include_once

Как включить один JavaScript файл в другой? Как обозначить зависимости между кодом расположенным в разных JavaScript файлах? Решения для этих проблем давно известны. А почему бы не попробовать разобраться с этим на сервере?

Реклама

CMS на стороне клиента

Конечно, полноценную CMS на стороне клиента реализовать невозможно (никто и не пытается). Но если у вас есть сайт на бесплатном хостинге, нет серверных скриптов, но хочется развернуть что-то более сложное, чем сайт-визитка на полутора страницах, то можно попробовать облегчить себе жизнь с помощью SNAC.

Что он умеет?


SNAC — аббревиатура от SNAC is Not at All a CMS. Это должно как бы намекать, что особого функционала от него ждать не стоит. Практически единственная вещь, которую он позволяет делать — это отделение оформление сайта от его содержания.

Ссылка на демонстрацию — в конце топика.

Реклама

Сделай мэшап — выиграй планшет на Hackathon

Скажу честно, давно мечтал сделать мероприятие про мэшапы для разработчиков и наконец появилась возможность! Приглашаю всех веб-разработчиков принять участие 16-17 июля в SumIT API Hackathon. В течении 1,5 дней вам необходимо будет создать интересный мэшап объемом не более 5Кб c использование только JavaScript, HTML5 и API популярных веб-сервисов (Facebook, Twitter, Amazon, Google, Yahoo, Foursquare, Flickr, Vkontakte и другие). По итогам будет выбран самый интересный мэшап, который получит приз планшетный компьютер Acer ICONIA TAB A500.

image

Какой мэшап замутить? Обсудим ниже, но ограничением является только ваше воображение! Дерзайте. Также лучшие программисты получат возможность присоединиться к лучшим стартап-командам или продолжить развивать свой проект в течении месяца. В августе все проекты SumIT после того как разработают прототипы смогут пообщаться с инвесторами.

Регистрация на Hackathon: http://www.sumit.ru/hackathon_reg

Давайте обсудим идеи мэшапов и разрешенные библиотеки.

Реклама

Sms2show — простая монетизации сайтов через смс и JavaScript

С каждым годом растет число дипломированных программистов, выпускаемых ВУЗами. К сожалению, программистами они оказываются лишь на гербовой бумаге. Каждый второй “программист” оказывается не в состоянии справиться с элементарным php кодом, что уж говорить о БД и хранении в ней смс-ключей?

Специально для таких случаев, а так же для тех, кто не хочет и не умеет программровать, мы и создали сервис Sms2show.

Sms2show – это продукт построенный на технологии JavaScript, который упрощает прием оплаты по sms для сайтов, содержащих оригинальный и востребованный контент.

Достаточно разметить на сайте (в текст новости, описании товара в магазине и т.п, т.е. во всех местах куда дают доступ современные CMS или системы блоггинга для неподготовленных пользователей) две строчки кода и можно задавать стоимость доступа, срок бесплатного демо-доступа и срок оплаченного доступа, который начнется отчитываться после оплаты через смс.

По истечении времени бесплатного доступа страница закрывается непрозрачной шторкой, содержащей инструкции по оплате доступа. Благодаря этому коду, будет осуществляться контроль доступа к контенту сайта и работа с платежами клиентов.

humour

Важное замечание для сторонников свободного ПО, использующих Gmail

Примечание переводчика: письма с этим текстом сегодня получили подписчики FSF, использующие Gmail.

Вы используете Gmail? Около 50% из 40 000 убежденных сторонников FSF из списка адресатов имеют почту на @gmail.com.

JavaScript, когда-то восхваляемый за простенькие визуальные эффекты на веб-страницах, теперь используется сайтами типа Gmail для запуска мощных программ на вашем компьютере. Эти программы, как и любые другие программы на вашем компьютере, должны быть свободным ПО. Но сейчас абсолютное большинство программ на Javascript не уделяют должного внимания вашим неотъемлемым свободам запускать, изучать, модифицировать и делиться. Они используют ваш компьютер без вашего вмешательства; мы 25 лет работаем, чтобы защищать от подобного поведения.

Из-за невероятно огромного процента использующих Gmail сторонников свободного ПО мы принимаем меры по просвещению, как использовать Gmail без проприетарного ПО. Мы также будем работать над долгосрочными решениями, но самым незамедлительным действием должен быть отказ от проприетарного ПО.

Многие считают, что от Gmail'а вообще нужно отказаться, потому что его использование означает потерю контроля над своими данными и конфиденциальностью. Мы согласны с тем, что это очень важный фактор при выборе способа управления почтой.

Но если вы сторонник свободного ПО, уже использующий Gmail, или имеете друзей или родственников, пользующихся им, в любом случае, пожалуйста, помогите нам сделать шаг к переменам — не позволяйте проприетарному JavaScript'у работать на вашей системе и помогите другим это осознать.

UPD. Поскольку, судя по оценке, хабраюзеры воспринимают топик излишне серьезно, переношу в Хабраюмор. Очень не хватает блога «Идиоты на проводе».

Ни о чём

Easter egg, konami code и arkanoid

Вместо предисловия


Технологии, технологии, технологии. Всё куда-то бежит, течёт и никак не остановить этот безумный поток. Да и надо ли? Тем не менее, за чередой новых, модных слов, и того, что за ними скрывается, мы зачастую упускаем что-то важное. Нет, совсем не глобально, даже не на столько, чтобы понимать, что мы что-то упустили. По чуть-чуть, каждый день вникая в очередную новую диковинку, её особенности, нюансы, отличие от других, уже изученных технологий, мы стираем частичку профессионального «Я» и смело записываем сверху новые знания. Однако, этот топик не философские рассуждения о том, как нам всем тяжело и что с этим делать, а о том, что чтобы сделать интернет немного ярче и интереснее, а себя немного счастливее, не нужно почти ничего… ну разве что немного javascript.

Javascript

Валидация форм в JavaScript ч.1

Вступление


Добрый день, уважаемый читатель. В этой статье я бы хотел обратиться к теме проверки содержимого форм на стороне клиента. На заре становления языков, работающих на клиенте, эта задача была основной. Со временем эти языки обросли новыми возможностями (манипуляция DOM, управление стилями и пр.), но задача проверки форм не исчезла. Правда с появлением HTML5 стало возможным указывать такой тип поля формы, как email, и браузер сам возьмет на себя его проверку. Такая возможность на данный момент реализована в Opera, так что расчитывать на нее пока особо не приходится. Поэтому я бы и хотел рассмотреть этот вопрос основательно. В большинстве случаев валидация проводится так: каждому полю раздаётся id, и затем при submit'е вытаскиваем их, попутно проверяя содержимое. И всем хорош данный подход, кроме отсутствия в нем системности. Поэтому хочу предложить вашему вниманию свое решение данной проблемы.