Как иметь несколько ссылок с одного изображения в рельсах - PullRequest
0 голосов
/ 06 января 2011

У меня есть одно изображение, из которого у меня должно быть 7 разных ссылок, основанных на той части изображения, на которую щелкнули. Как мне это сделать с помощью рельсов?

Ответы [ 3 ]

8 голосов
/ 06 января 2011

Для дальнейшего использования, вы говорите о «картах изображений» - для них есть различные учебные пособия, например, http://www.onextrapixel.com/2009/04/30/how-to-create-multiple-links-on-a-single-image-with-image-map/

Насколько я знаю, это не вопрос рельсов, как карты изображенийэто полностью передовая вещь: как и js, они относятся только к странице, как видно в браузере.Что касается rails, то, когда вы нажимаете на ссылку, все равно, была ли эта ссылка на карте изображений или нет.

Итак, это просто какой-то необработанный html, который вы бы добавили в шаблон представления..

Полагаю, вы могли бы сделать карты изображений управляемыми данными, так что, например, вы сохраняете имя файла изображения в БД, а затем сохраняете также любые данные карты в БД в таблице image_maps.Это стоит делать, только если вы хотите, чтобы карты изображений были доступны для редактирования пользователем, как, например, мерцание.(flickr позволяет нарисовать прямоугольник на существующей фотографии и пометить его текстом)

2 голосов
/ 19 апреля 2011

просто используйте url_for для генерации необходимого URL

<img usemap="image_link" src="..." alt="" width="235" height="32" style="display: block;" />
<map name="image_link">
    <area href="<%= url_for root_path %>" alt="Home" coords="0,0,189,19" shape="rect" />
    <area href="<%= url_for :controller => "post", :action => "all" %>" alt="All posts" coords="190,0,386,22" shape="rect" />
    <area href="<%= url_for new_resource1_path %>" alt="New resource1" coords="387,0,657,23" shape="rect" />
</map>

корневой путь определен как домашняя страница, а resource1 - как ресурс в config / rout.rb.

0 голосов
/ 06 января 2011

Это скорее вещь типа javascript / flash. Вы можете абсолютно точно позиционировать элементы div со ссылками, если точно знаете, куда нужно перейти, и вы не ищете область, по которой пользователь может щелкнуть, потому что это просто сгенерирует ссылку с текстом в определенной позиции.

Звучит так, будто вам нужно будет создать приложение для флеш-памяти или сделать обходной путь для JavaScript. Это не проблема типа Rails, поэтому ваше решение не будет исходить из Ruby / Rails.

...