Высота 100% в JS

0

Я работаю над каталогом и хочу, чтобы карта Google была отзывчивой, поэтому я должен определить высоту до 100% в JS. Ниже приведен код, который я использовал:

var mapdiv = document.getElementById("company_map"); 
mapdiv.style.width = '1000px'; 
mapdiv.style.height= '205px';

geocoder = new google.maps.Geocoder(); 
var map = new google.maps.Map(mapdiv, myOptions);

Поэтому мне нужно изменить mapdiv.style.height = '205px'; to mapdiv.style.height = '100%'; но% не работает.

  • 0
    У любых других элементов проявляется такое же поведение с высотой: 100% или только у Google Maps
  • 1
    100% чего конкретно, родительский элемент, окно или что-то еще целиком?
Показать ещё 1 комментарий
Теги:
google-maps

2 ответа

1
Лучший ответ

Получите рост родителей и установите его в пикселях вместо этого, поскольку 100% означает полную высоту родительского элемента

var mapdiv = document.getElementById("company_map"),
    parent = mapdiv.parentNode;

mapdiv.style.width  = '1000px';
mapdiv.style.height = parent.clientHeight + 'px';

geocoder = new google.maps.Geocoder();

var map = new google.maps.Map(mapdiv, myOptions);
  • 0
    Это не то же самое, что height: 100% , потому что если размер окна (или родительского элемента) изменяется, этот дочерний элемент также не будет изменен.
  • 0
    это работает, но я не могу установить высоту родителя на 100%
0

работает на меня...

CSS:

body, html{
  height: 100%;
}

div{
  background-color: red;
}

ЯШ:

var div = document.getElementById('company_map');
div.style.width = '200px';
div.style.height = '200px';

div.onclick = function(){
    div.style.height = '100%';
};

Убедитесь, что вы устанавливаете высоту на родительский элемент, иначе 100% не имеет значения...

Ещё вопросы

Сообщество Overcoder
Наверх
Меню