Начало перевода
Posts tagged with javascript
06.09.2009Шаблоны программирования Javascript (часть I)
Javascript предназначен для создания сценариев поведения сайта, это может быть как валидация форм, так и более сложные операции, такие как drag&drop или выполнение асинхронных запросов к серверу (например, Ajax). За последние нескольких лет Javascript библиотеки стали гораздо более популярны. Одной из причин этого, безусловно, является то, что веб-сайты становятся все более и более сложными и изобретать велосипед каждый раз уже не приемлемо, особенно, если у вас плотный график работы. Но оставим библиотеки и сосредоточимся на чистом Javascript, ведь это очень полезно — знать, какие есть паттерны программирования на Javascript.
В этой статье я попытаюсь представить некоторые из методов, которые я обнаружил. Я хотел бы отметить следующие паттерны:
- «Старая школа»;
- Одиночка (Singleton);
- Модули;
- Открытые модули;
- Объекты;
- Определение ленивых функций.
23.09.2008Валидация данных в Jaxer
В предыдущей статье я рассказал как интегрировать Jaxer с Denwer, теперь расскажу о преимуществах Jaxer при валидации данных. В связке php+javascript (как в общем то и других) приходится проверять данные дважды — на сервере и на клиенте, причем делать это разными способами, так как языка два. С помощью Jaxer можно написать одну функцию валидации и вызывать ее как с клиентской стороны, так и с серверной. Впрочем ближе к коду:
02.09.2008запуск Denwer+Jaxer
Не так давно компания Aptana выпустила сервер Jaxer. Ядро этого сервера — интерпретатор JavaScript из проекта Mozilla.org (движок называется SpiderMonkey). Сервер громко провозглашен первым в мире Ajax-сервером по довольно простой причине. Помимо серверного JavaScript, который пишется в коде HTML страниц (так же как и PHP), сервер позволяет функции, написанные для исполнения не сервере, вызывать из кода предназначенного для выполнения на стороне клиента. Вызов осуществляется с помощью AJAX-запроса. Кроме этого с помощью директивы both, приписываемой в атрибуте runat тега script можно указать фрагменты кода, которые могут исполняться как на клиенте, так и на сервере. Подробней об этом, для тех кто заинтересовался, написано ниже.
16.03.2008Длина строки в javascript (в пикселях)
Сегодня на работе возникла задача - узнать реальную длину строки, после непродолжительных раздумий родился следующий код:
function stringSize(obj,str) { var s = document.createElement("span") s.innerHTML=str; s.style.visibility="hidden"; s.style.whiteSpace="nowrap"; obj.appendChild(s); var res={width:s.offsetWidth,height:s.offsetHeight}; obj.removeChild(s); return res; }
Соответственно вычисляется размер строки с учетом стиля нужного элемента

