Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Заменить значение height в div (https://javascript.ru/forum/misc/77785-zamenit-znachenie-height-v-div.html)

_marisha 20.06.2019 13:29

Заменить значение height в div
 
Доброго времени суток!
Подскажите, пожалуйста, как в div в style заменить значение height. Спасибо.
Пример, есть элемент:
<div class="slick-track" style="opacity: 1; height: 1674px; transform: translate3d(0px, -702px, 0px);">

В данном случае в style нужно (два варианта)
1) заменить height на maxheight: 498px;
2) убрать height

_marisha 20.06.2019 13:39

var element = document.getElementsByClassName('slick-track');
    element.style.height = '400px';

В таком случае в консоли ошибка "Cannot set property 'height' of undefined"

рони 20.06.2019 13:40

_marisha,
<div class="slick-track" style="opacity: 1; height: 1674px; transform: translate3d(0px, -702px, 0px);"></div>
<script>
  let {style} = document.querySelector(".slick-track");
  style.height = "";
  style.maxWidth = "498px"
</script>

рони 20.06.2019 13:42

Цитата:

Сообщение от _marisha
var element = document.getElementsByClassName('slick-track');

это список элементов!!! нужен индекс
element[0].style.height = '400px';

_marisha 20.06.2019 13:52

рони, спасибо что откликнулись )
let{style} = document.querySelector(".slick-track");
    style.height = "400px"; // или style.height = "";

В таком случае ошибка в консоли Uncaught TypeError: Cannot destructure property `style` of 'undefined' or 'null'.

var element = document.getElementsByClassName('slick-track');
element[0].style.height = '400px';

В таком случае ошибка Uncaught TypeError: Cannot read property 'style' of undefined

рони 20.06.2019 13:57

_marisha,
рано запустили скрипт, элементов ещё нет с данным классом. ставить после инициализации слайдера.

_marisha 20.06.2019 14:01

рони, действительно, если добавить код после подключения слайдера, то в консоли ошибок нет.
Но высота не применяется :(
<script>
    $('.slider').slick({
        arrows: false,
        infinite: true,
        autoplay: true,
        Speed: 3000,
        slidesToShow: 1,
        slidesToScroll: 1,
        pauseOnHover: true,//остановка при наведении
        pauseOnFocus: true,
        focusOnSelect: true,
        variableWidth: true,
        asNavFor: '.slider-nav'
    });
    $('.slider-nav').slick({
        vertical: true,
        arrows: true,
        infinite: true,
        slidesToShow: 9,
        slidesToScroll: 1,
        asNavFor: '.slider',
        pauseOnHover: true,
        pauseOnFocus: true,
        focusOnSelect: true,
        variableHeight: true,
    });
</script>
<script>
    let style = document.querySelector(".slick-track");
    style.height = "";
    style.maxheight = "498px"
</script>

рони 20.06.2019 14:53

Цитата:

Сообщение от _marisha
Но высота не применяется

где код?!!!
Цитата:

Сообщение от _marisha
let{style}


_marisha 20.06.2019 16:02

Скажите, пожалуйста, что сделано не так? (

рони 20.06.2019 16:04

_marisha,
фигурные скобки добавьте {}


Часовой пояс GMT +3, время: 04:31.