Как сделать модальное окно, которое меняет размер?
Здравствуйте. Имеется модальное окно со встроенным внутри слайдером картинок. На данный момент фиксированный размер окна 620x620, эти размеры необходимы для демонстрации 3 и 4 картинки, но нужно, чтобы 1 и 2 картинки демонстрировались при размере окна в 320х320. То есть надо, чтобы после второй картинки размер модального окна менялся с 320х320 на 620х620. Помогите, пожалуйста, решить эту задачу, если это вообще возможно сделать.
Код:
#wrap9{
<button onclick="show('block')">Продолжить</button>
<div id="wrap9"></div>
<!-- Само окно-->
<div id="window9">
<div id="slider">
<div class="slide_item">
<img src="https://cdn1.flamp.ru/1b0c06e888addc8e158ca552709de5a5_300_300.jpg">
</div>
<div class="slide_item">
<img src="https://cdn1.flamp.ru/4c6ba0df4ec769222aea54ba2159a68c_300_300.jpg">
</div>
<div class="slide_item">
<img src="https://app.clilk.com/db/projpics/5b6479432ab66ea7789f0172.png">
</div>
<div class="slide_item">
<img src="https://i03.fotocdn.net/s117/c9fe0056cfefb3ac/gallery_m/2676059525.jpg">
</div>
</div>
</div>
let timer = null;
let slider = document.querySelector('#slider'),
slides = slider.querySelectorAll('.slide_item'),
len = slides.length,
index = len - 1,
dir = 1;
function move() {
slides[index].style.opacity = "";
slides[index].style.Zindex = "";
index = (index + dir + len) % len;
slides[index].style.opacity = 1;
slides[index].style.Zindex = 1;
index < len - 1 && (timer = window.setTimeout(move, 2000));
}
function show(state) {
if (state === "block") {
timer = window.setTimeout(move, 0);
} else {
clearTimeout(timer);
}
document.getElementById('window9').style.display = state;
document.getElementById('wrap9').style.display = state;
}
|
Цитата:
Хотя этот элемент вообще не является окном. :blink: И такое сплошь и рядом. Кто вас такому научил? |
Попробуйте так:
var popup = document.getElementById('window9');
function move() {
slides[index].style.opacity = "";
slides[index].style.Zindex = "";
index = (index + dir + len) % len;
slides[index].style.opacity = 1;
slides[index].style.Zindex = 1;
if (index > 1) {
popup.style.width = '620px';
popup.style.height = '620px';
} else {
popup.style.width = '320px';
popup.style.height = '320px';
}
index < len - 1 && (timer = window.setTimeout(move, 2000));
}
ЗЫ. в css изначальный размер попапа должен быть 320*320px. |
| Часовой пояс GMT +3, время: 04:28. |