Ajax-ish обновление элемента canvas - PullRequest
0 голосов
/ 16 ноября 2009

Хорошо, это более общий вопрос технологии / подхода.

У нас есть очень простое веб-приложение, которое по сути является просто элементом canvas. Мы используем JavaScript для рисования «причудливого пользовательского интерфейса» на холсте. Мы регистрируем событие щелчка мышью, получаем координаты и затем пытаемся выяснить, на какой виджет они нажали.

У меня вопрос: какие технологии или фреймворки лучше всего подходят для этого в духе AJAX? Я хочу, чтобы страница отображалась, затем пользователь щелкает где-то на холсте, и мы передаем эту координату обратно в некоторый код на стороне сервера (PHP или Ruby), который будет запускать некоторую логику, обновлять базу данных и т. Д., А затем возвращаться с новыми данными для метода Draw javascript, эффективно обновляющего пользовательский интерфейс в зависимости от того, что выбрал пользователь, с минимальным миганием и обновлением (хотя холст может быть в IFRAME)

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

РЕДАКТИРОВАТЬ: хорошо, чтобы быть более точным, я, по сути, спрашиваю о самом простом способе отправить простые строковые данные через AJAX (что означает отсутствие полного обновления страницы), получить возвращаемое значение строки и обновить тег canvas с помощью это возвращаемое значение. Я не прошу код или пример (хотя я бы не стал жаловаться), я просто прошу подумать о самой простой технологии - jQuery, Prototype, Rails, JSON vs. XML и т. Д. PHP или Ruby, поэтому мне там не нужна помощь, только с частью AJAX-> Canvas.

Ответы [ 2 ]

2 голосов
/ 17 ноября 2009

Если все, что вы хотите сделать, это сделать некоторые вычисления, почему бы не сделать это в javascript?

Если вам требуется постоянство или вы выполняете интенсивные вычисления, тогда подойдет любое из следующих действий.

Простота развертывания Каркасы: * (То есть, фреймворки, которые имеют множество документации и учебных пособий и написаны на том, что обычно считается более простым языком сценариев.)

CodeIgniter | CakePHP | Zend

Джанго


Труднее развернуть Frameworks: * (То есть фреймворки, которые имеют меньше доступной документации (и ограниченное количество учебных пособий) или написаны на более сложных языках [то есть языках, которые обычно используют более сложные парадигмы])

Несколько фреймворков Lisp

C ++ Каркасы

Несколько Perl-фреймворков

Больше фреймворков Java, чем вы когда-либо могли бы использовать

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


* Обратите внимание, что это разделение является полностью субъективным.

2 голосов
/ 16 ноября 2009

Хмм, я предлагаю Ajax. Это очень Ajax-иш.

Хорошо, позвольте мне уточнить - эта последняя строка не очень полезна, но вопрос тоже не в этом. Используйте JQuery / Prototype, чтобы отправить Ajax-запрос к вашему сервису с координатами и другой информацией, которую вы собрали из элемента canvas. Возьмите ответ для обновления canvas в зависимости от исходного ввода.

Ваш вопрос очень неспецифичен ... вы цитируете " путь AJAX-типа " ... ну, это может означать очень много вещей. Для меня, зачем идти с чем-то, что AJAX , когда у вас есть реальная сделка AJAX .

"Какой самый простой подход к этому? Я немного посмотрел на Rails, но это кажется излишним. Все что я хочу это вернуть координаты клика, запустить некоторый серверный код, и вернуться с новым фрагментом текста, чтобы передать мой Функция рисования JavaScript (тот, который рисует на холсте элемент) "

Да. Мы все еще говорим об Аяксе.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...