2013-06-11 2 views
1

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

Благодаря

var width = $(this).width(); 

document.write('<img src="https://maps.googleapis.com/maps/api/staticmap? 
center=55.919070, -5.306156&amp;zoom=15&amp;size=' + (width - 30) + 
'x200&amp;markers=55.919070, -5.306156&amp;sensor=false" width="' + 
(width - 30) + '" height="200">'); 
+0

вы пробовали [$ (это) .height()] (http://api.jquery.com/height/)? Кроме того, прокладка включается как часть width() - поскольку она является * вычисленной * высотой. – LeonardChallis

+0

@LeonardChallis Привет, я должен был сказать, высота контейнера намного больше ширины. Я не хочу, чтобы изображение заполняло контейнер, просто количество, которое поддерживает изображение пропорционально его ширине. – jskidd3

+0

Какова пропорция? – LeonardChallis

ответ

3

Чтобы выработать отношение (например, 16: 9), можно сделать следующий расчет:

height = Math.round((width/16)*9); 
+0

Спасибо, Леонард! :) – jskidd3

+0

Удовольствие :) Хорошая идея для карты Google 16: 9;) – LeonardChallis

Смежные вопросы