Тема: jQuery PHP library
Показать сообщение отдельно

jQuery PHP library
  #1  
Старый 09.01.2008, 22:53
ice1k
Постоянный
Регистрация: 01.01.2007
Сообщений: 551
С нами: 10188326

Репутация: 1866


По умолчанию jQuery PHP library

PHP библиотека для jQuery

С тех пор как сочетание "Web 2.0" пришло в массы, все чаще разработчикам сайтов приходиться добавлять "web 2.0 красивости" к сайтам. Очень помогает в этом JavaScript фреймворк jQuery. Описывать все прелести данного фреймворка я думаю не имеет смысла (о нем и так слишком много написано), но мне, как PHP разработчику, нехватало удобного сервер сайда для генерации AJAX ответов, в итоге на свет появилась PHP библиотека jQuery-PHP...
Что в данной библиотеке особенного? Ну во первых это синтаксис - он очень схож с JavaScript частью, вот вам пример:
PHP код:
$('#test0').html('new content'); 
PHP код для генерации такого скрипта выглядет следующим образом:
PHP код:
jQuery::jQuery('#test0') -> html('new content'); 
Как видим из примера - синтаксис действительно повторяет знакомый для многих jQuery. Это конечно простенький примерчик, попробуем что-нить посложнее:
PHP код:
jQuery::jQuery('#test3 div') -> bind('click', array('test'=>'answer'), 'eventAlert')
-> 
css ('cursor''pointer')
-> 
css ('color''#0000ff')
-> 
css ('textDecoration''underline'); 
или даже так:
PHP код:
jQuery::jQuery('#test2 div') -> html(date('H:i:s') . ': new content')
-> 
css('backgroundColor' '#0000ff')
-> 
filter('.red')
-> 
css('backgroundColor' '#ff0000')
-> 
filter('filter')
-> 
css('backgroundColor' '#00ff00'); 
Как видим - даже такие относительно сложные цепочки работают.
На данный момент я не смог протестировать работу всех функций, знаю точно, что существуют следующие ньюансы:

* методам jQuery, которым в качестве параметров могут быть переданы callback функции могут быть вызваны в PHP, но javascript функции не могут генерироваться на лету, следовательно в качестве параметров следует использовать имя существующей функции
* для поддержки callback функций приходиться писать правила исключения в файле jquery.php.js (см. мегасвитч начинающийся с 30-ой строки)
* совсем не тестировалось с плагинами

Так же в данной бибилотеки есть служебные методы:

* addMessage - добавить сообщение
* addError - добавить сообщение о ошибке
* evalScript - выполнить javascript

http://habrahabr.ru/blog/php/33611.html
 
Ответить с цитированием