2016-05-26 3 views
0

Я работаю над этим data map и стараюсь сделать его более мобильным. Проблема в том, что теперь я не могу понять, как изменить точку, в которой он становится отзывчивым.Мобильный отзывчивый Javascript Map

Это самая маленькая точка, в которой карта правильно масштабируется enter image description here

Если переместить его более 1 пиксель, она повторно размеры как этот enter image description here

Как я могу установить ПЕРЕУСТАНОВКИ размер границы в пределах 10-20 пикселей содержимого? enter image description here

+0

Ну вам нужно добавить свои элементы диаграммы к одному SVG, ширина и высота вам нужно вычислить динамически и от расчетной ширины и высоты дают ширину SVG и высоты до 3 внутренних диаграмм. – SiddP

ответ

1

вы можете использовать сырые Media Queries, чтобы решить эту проблему, я попытался показать вам, как вы можете решить, но вы знаете, как структурированы таким образом, его просто манекен.

Вы видите (min-width: 500px), это тот момент, который вы хотите установить.

<div class="min-range-1"> 
map goes here 
</div> 

<div class="min-range-2"> 
charts goes here 
</div> 


<style> 
@media only screen and (min-width: 500px) { 
/* For tablets: */ 
.min-range-1 {width: 8.33%;} 
.min-range-2 {width: 16.66%;} 
} 
@media only screen and (min-width: 768px) { 

.min-range-1 {width: 8.33%;} 
.min-range-2 {width: 16.66%;} 
} 

+0

На самом деле я не построил карту. Мой разработчик слабился, и я застрял, пытаясь понять эту часть. Не могли бы вы быть более конкретными ... Извините, я не разработчик. Я предполагаю, что я добавляю это в .css-файл правильно? – shictins

1

Добавьте следующий код под windows resize и добавить свои диаграммы к одному parent id, так что все остальные будут вычисляться динамически, без какого-либо перерыва.

var containerWidth = $("#yourChartId").parent().width(); // gets immediate parent width 
    var containerheight = $("#yourChartId").parent().height();// gets immediate parent height 

    // Give the below to parent svg 
    var margin = {top: 15, right: 15, bottom: 20, left: 40}, 
    width = containerWidth- margin.left - margin.right, 
    height = containerheight - margin.top - margin.bottom; 

    // Assign below widths and heights to respective children 

    var marginMap = {top: 5, right: 5, bottom: 10, left: 20} 
    widthMap = width/2 - marginMap.left - marginMap.right, 
    heightMap = height/2 - margin.top - margin.bottom; 

    var marginBargraphs = {top: 5, right: 5, bottom: 10, left: 20} 
    widthBargraphs = width/2 - marginBargraphs.left - marginBargraphs.right, 
    heightBargraphs = height/2 - marginBargraphs.top - marginBargraphs.bottom; 
+0

Мне не удалось выполнить ваши изменения. Не могли бы вы позволить мне нанять вас для выполнения задания? – shictins

+1

Несомненно, вы можете поделиться более подробной информацией. – SiddP

+0

, пожалуйста, свяжитесь со мной по электронной почте [email protected] – shictins

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