Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.05.2010, 14:19
Новичок на форуме
Отправить личное сообщение для greg Посмотреть профиль Найти все сообщения от greg
 
Регистрация: 09.05.2010
Сообщений: 3

Изменение ширины div-ов
на странице 4 колонки (резиновые, 25% каждая по ширине). от краев страницы до колонок и между ними нужны фиксированные промежутки в 10px. средствами html\css не смог придумать, как уместить на странице все 4 колонки, кроме уменьшения размера каждой до 24%. иначе 4-ая колонка размещается под 3-ей.

решил узнать ширину document, вычесть сумму промежутков и поделить на 4 (в ие результат получался больше, пришлось уменьшать на 6:

$(document).ready(function(){
var x=0
if ($.browser.msie) {
x=x+6;
 }
$('div#content').css('width', ($(document).width()-50)/4-x); 
});


все работает как надо, если не изменять размер окна. при уменьшении ширины окна браузера, последняя колонка(и) съезжают под предыдущую. а если потом развернуть окно на максимум, то колонки остаются узкими. если обновить страницу, то колонки отображаются как надо по ширине.

вопрос: можно как-то "отловить" изменение размеров окна браузера и обновлять ширину колонок без обновления страницы пользователем?

Последний раз редактировалось greg, 09.05.2010 в 14:22.
Ответить с цитированием
  #2 (permalink)  
Старый 09.05.2010, 14:45
Профессор
Отправить личное сообщение для exec Посмотреть профиль Найти все сообщения от exec
 
Регистрация: 21.01.2010
Сообщений: 1,022

$(window).resize(function () {
// function
});
Ответить с цитированием
  #3 (permalink)  
Старый 09.05.2010, 17:21
Новичок на форуме
Отправить личное сообщение для greg Посмотреть профиль Найти все сообщения от greg
 
Регистрация: 09.05.2010
Сообщений: 3

пробовал вставлять в resize например изменение фона элемента - меняется, а вот чтобы отразились изменение ширины колонок, надо их load'ом перезагружать? другого варианта нет?
Ответить с цитированием
  #4 (permalink)  
Старый 09.05.2010, 22:52
Новичок на форуме
Отправить личное сообщение для greg Посмотреть профиль Найти все сообщения от greg
 
Регистрация: 09.05.2010
Сообщений: 3

так работает, спасибо.

$(document).ready(function(){
var x=0;
        if ($.browser.msie) {
            x=x+6;
        }
        $('div#content').css('width', ($(document).width()-50)/4-x);
});
$(window).resize(function() {
        var x=0;
        if ($.browser.msie) {
            x=x+6;
        }
        $('div#content').css('width', ($(document).width()-50)/4-x);
});


повторяющийся код в одну функцию занесу.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменение высоты div TAILER Общие вопросы Javascript 11 11.04.2010 21:42
Появление блоков div в зависимости от radio Oracool Events/DOM/Window 1 04.12.2009 18:39
Плавное изменение ширины ячейки в таблице fed0R Элементы интерфейса 4 29.07.2009 12:50
Динамическое изменение <input text> baal1988 Events/DOM/Window 4 24.08.2008 17:17
Изменение ширины полосы прокрутки Devoto Общие вопросы Javascript 3 07.07.2008 17:01