В предыдущей статье я рассказал как интегрировать 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; }
Соответственно вычисляется размер строки с учетом стиля нужного элемента

