Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.09.2015, 18:37
Аспирант
Отправить личное сообщение для Quark_ Посмотреть профиль Найти все сообщения от Quark_
 
Регистрация: 24.06.2015
Сообщений: 96

Динамическая ширина контента
Ситуация: сайт в две колонки (left 70% и right 30%). Задача была сделать так, чтобы когда справа заканчивались блоки, то left становился 100% т.е. контент расширялся на ширину рабочей области шаблона.
Я нашел только такой вариант:
$(document).ready(function(){
$(window).scroll(function(){
	var top = $(this).scrollTop();
	if (top > 750) {
		$('.left').addClass('wide');
		$('.right').addClass('none');
	} else {
		$('.left').removeClass('wide');
		$('.right').removeClass('none');
	}
});
});

и далее стилями...

Но теперь высота в 750px не актуальна т.к. на разных страницах - разное количество баннеров в правой колонке.
Как словить, например выход div id="last" (который будет последним) за пределы видимости окна браузера и после этого накинуть классы?
Ответить с цитированием
  #2 (permalink)  
Старый 09.09.2015, 18:44
Аватар для Lemme
Профессор
Отправить личное сообщение для Lemme Посмотреть профиль Найти все сообщения от Lemme
 
Регистрация: 15.07.2015
Сообщений: 511

window.onscroll = function() {
    var right = document.querySelector('.right');
	var left = document.querySelector('.left');
    
	if(pageYOffset >= right.offsetHeight) {
    	left.classList.add('wide');
    }
    else if (left.classList.contains('wide')) {
        left.classList.remove('wide');
    }
}

Последний раз редактировалось Lemme, 09.09.2015 в 19:16.
Ответить с цитированием
  #3 (permalink)  
Старый 09.09.2015, 20:15
Аспирант
Отправить личное сообщение для Quark_ Посмотреть профиль Найти все сообщения от Quark_
 
Регистрация: 24.06.2015
Сообщений: 96

Delete.
Все работает, спс.
Ответить с цитированием
  #4 (permalink)  
Старый 10.09.2015, 09:16
Профессор
Отправить личное сообщение для krasovsky Посмотреть профиль Найти все сообщения от krasovsky
 
Регистрация: 21.12.2012
Сообщений: 869

Лучше для такого использовать css media queries. Но у него есть определенные ограничения в кроссбраузерности.
Ответить с цитированием
  #5 (permalink)  
Старый 10.09.2015, 13:50
Аватар для Lemme
Профессор
Отправить личное сообщение для Lemme Посмотреть профиль Найти все сообщения от Lemme
 
Регистрация: 15.07.2015
Сообщений: 511

krasovsky, на media queries такое не провернешь. Если не прав, то буду рад примеру=)

Последний раз редактировалось Lemme, 10.09.2015 в 13:54.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамическая ширина Div'a не всегда работает braaa jQuery 0 24.05.2013 19:22
Динамическая подгрузка контента при прокрутке assd18 AJAX и COMET 11 14.03.2013 14:05
Ajax динамическая загрузка контента на ucoz noobasik Общие вопросы Javascript 3 19.11.2012 09:20
Почему динамическая таблица создается без контента?.. deivan Firefox/Mozilla 3 15.08.2012 14:28
Помогите с калькулятором piton1175 AJAX и COMET 0 16.06.2011 14:29