Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Создание интерактивной схемы (https://javascript.ru/forum/dom-window/46468-sozdanie-interaktivnojj-skhemy.html)

kolum 11.04.2014 02:21

Создание интерактивной схемы
 
Доброго времени.
Поставили мне такую задачу: есть схема складских мест, разбросанных по территории(рисунок), надо сделать так, чтобы при открытии страницы было видно, какие из низ заняты, какие свободны (обозначить их разными цветами, например), а при клике на место всплывало окно с данными (какой груз и его количество). Все данные хранятся в БД(Oracle). Попробовал реализовать все при помощи Raphael и jquery, доступ к БД посредством PHP, но получается как-то громоздко и сложно (в js я вобще чайник).
Возникла идея, размещать на схеме иконки, и кликая по ним, получать результаты, в связи с этим вопросы:

1. Как разместить кликабельную картинку в определенных координатах?
2. Как сделать, чтобы при клике на картинку сработал мой скрипт на php, вернул данные из БД и они отобразились во всплывающем окне? (данные буду возвращать через ajax/POST).

Сумбур вобщем какой-то написал :-?

Еще есть вопросик небольшой в ту же тему. Возможно ли присвоить этому изображению обработчик по клику?
echo "<img src=\"img/place1.gif\" style=\"position:absolute; top:".$top."px; left:".$left."px;\">";


Спасибо.

kolum 11.04.2014 03:19

Вот примерно то, что надо сделать:
http://dynmap.ruslotro.com/

jsnb 11.04.2014 05:51

Цитата:

Сообщение от kolum (Сообщение 307195)
Как разместить кликабельную картинку в определенных координатах?

В CSS задать position: absolute и можно двигать как угодно меняя CSS свойства left и top. Если задать у родительского элемента position:relative, то left и top будут относительно родительского элемента.

Цитата:

Сообщение от kolum (Сообщение 307195)
Как сделать, чтобы при клике на картинку сработал мой скрипт на php, вернул данные из БД и они отобразились во всплывающем окне? (данные буду возвращать через ajax/POST).

Ну, вешаешь на клик обработчик, который шлет ajax GET/POST запрос с нужными данными на сервер (скрипт), сервер на основании полученных данных делает SQL запрос к базе, получает выборку, и формирует на основании нее ответ в виде того же JSON и ответом на клиентский запрос. Клиент получает ответ и отображает нужные данные как ему надо.

Про события написано тут: http://learn.javascript.ru/events-and-interfaces
Про ajax тут: http://learn.javascript.ru/ajax
Если используется jQuery гуглить методы .ajax/.post/.get


Часовой пояс GMT +3, время: 10:53.