Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Динамическое изменение окна (https://javascript.ru/forum/events/12125-dinamicheskoe-izmenenie-okna.html)

Арсений 01.10.2010 18:09

Динамическое изменение окна
 
Кода очень много и как правильно составить вопрос тоже чуть чуть не могу понять:)
Хочу сделать что бы окно уменьшалось как в виндовсе
Делаю так:
создаю 5ть див элементов:
1 - 150px на 150px
и 4 в каждом углу 10px на 10px

Все отлично работает если не один нюанс:
Если скажем левую сторону притянуть в притык к правой стороне (то есть ширина окна получается 20px) то я не могу изменить ширину окна так как выбрасывает из функции по перемещению.

Вот пример кода для уменьшения размера окна из правого верхнего угла

if (elementToDrag.className == 'd2'){
if (elementToDrag.offsetLeft != (document.getElementById('d1').offsetLeft + 20))
 {
 elementToDrag.style.left = (e.clientX - deltaX) + "px";
 elementToDrag.style.top = (e.clientY - deltaY) + "px";
var d1 = document.getElementsByTagName('div');
for (i=0; i<d1.length; i++) {
	if (d1[i].className == 'd1') d1[i].style.top = (e.clientY - deltaY) + "px";	
}
for (a=0; a<d1.length; a++) {
	if (d1[a].className == 'd3') d1[a].style.left = (e.clientX - deltaX) + "px";	
}

if (elementToDrag.offsetLeft > document.getElementById('d1').offsetLeft) {
var width1 = elementToDrag.offsetLeft - document.getElementById('d1').offsetLeft;
document.getElementById('body').style.width = width1 + 10 + "px";
}

if (document.getElementById('d3').offsetTop > elementToDrag.offsetTop) {
var height1 = document.getElementById('d3').offsetTop - elementToDrag.offsetTop;
document.getElementById('body').style.height = height1 + 10 + "px";
document.getElementById('body').style.top = (e.clientY - deltaY) + "px";
}
}
}

Арсений 01.10.2010 18:13

если можете подсказать то могу скинуть файлом, что бы вам было наглядней понять, что у меня не получается сделать.

Арсений 01.10.2010 20:13

всем спасибо уже разобрался сам:lol:


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