Nikulio
@Nikulio
NaN !== NaN

Неправильно отсчитывает высоту элемента при загрузке страницы?

Всем привет.
При загрузке страницы у меня такая функция :

$(document).ready(function () {
  bountyWizard();
})
function bountyWizard() {
  var activeBlockHeight = $(".bounty-elements__element.active").height();
  var parentBlock = $(".bounty-elements");
  parentBlock.height(activeBlockHeight)
  $(window).resize(function () {
    activeBlockHeight = $(".bounty-elements__element.active").height();
    parentBlock.height(activeBlockHeight)
  })
  
  $('.bounty-wizard__step').on('click', function(e) {
  
    e.preventDefault();
    var id = $(this).attr('data-bounty-id');
    var element = $('div[id="' + id + '"]');
    
    $(".bounty-wizard__step").removeClass("active");
    $(".bounty-elements__element").removeClass("active");
    
    $(this).addClass("active");
    element.addClass("active");
  
    var activeBlockHeight = $(".bounty-elements__element.active").height();
    parentBlock.height(activeBlockHeight)
  
  
  })


Проблема в том, что ф-я не всегда правильно даёт высоту, а это критично, ибо у .bounty-elements__element стоит postition: absolute; и если даётся неправильная высота, то блоки находят друг на друга
Какое есть решение?
  • Вопрос задан
  • 64 просмотра
Пригласить эксперта
Ответы на вопрос 1
@sdgroup14
вот вопрос ваш понятен, а вот исход не логичен. У вас высота активного блока динамическая? если да, то ок, а если нет, то зачем вы 3 раза переопределяете высоту.... Вы очень код свой засоряете....
Для начала создайте нам плункер, чтоб мы увидели, зачем вы 3 раза определяете переменную для высоты, и задаете ее :)

я бы на вашем месте создал function getHeight(){} ..... а потом ее обьявлял и в ресайзе и в клике... А пример нам обязательно нужен потому что с вашего вопроса и кода должно все работать верно... Может что то стороннее мешает или что то вы не учли
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы