Javascript.RU

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

Изменение высоты div'а
Здравствуйте.
Блок info имеет различную высоту в зависимости от его содержимого. Задача: сделать блоки ads и info равной высоты.
<style>
#info {width:260px; height:auto; position:absolute; right:17px; //right:19px;}
#ads {clear:both;}
</style>

Подскажите, пожалуйста, в чём ошибка?
<script type="text/javascript" language="JavaScript">
	var block = document.getElementById('info');
	var space = document.getElementById('ads');
	a = block.currentStyle.height;
	space.style.height = a;
</script>
Ответить с цитированием
  #2 (permalink)  
Старый 16.12.2010, 14:29
Профессор
Отправить личное сообщение для exec Посмотреть профиль Найти все сообщения от exec
 
Регистрация: 21.01.2010
Сообщений: 1,022

document.getElementById('ads').style.height = document.getElementById('info').offsetHeight + 'px';
Ответить с цитированием
  #3 (permalink)  
Старый 11.01.2011, 13:17
Аватар для SnikerS
Интересующийся
Отправить личное сообщение для SnikerS Посмотреть профиль Найти все сообщения от SnikerS
 
Регистрация: 16.12.2010
Сообщений: 19

Когда на странице блок "ads" не отображается, то появляются ошибки.
Сведения об ошибке на веб-странице:

Цитата:
Агент пользователя: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0) штамп времени: Tue, 11 Jan 2011 10:19:44 UTC

Сообщение: Требуется объект
Ответить с цитированием
  #4 (permalink)  
Старый 11.01.2011, 13:19
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,215

SnikerS, нормальный тестовый пример сделай - на нём и покажут...

Простой вёрсткой там чего, не обойтись никак?
Ответить с цитированием
  #5 (permalink)  
Старый 11.01.2011, 14:45
Аватар для SnikerS
Интересующийся
Отправить личное сообщение для SnikerS Посмотреть профиль Найти все сообщения от SnikerS
 
Регистрация: 16.12.2010
Сообщений: 19

Цитата:
Простой вёрсткой там чего, не обойтись никак?
ksa, возможно моих знаний не хватает.

Abocms. Темплейт содержит 3 файла: общий, категория, товар.
Модуль рекламы (catright) выводится в правой колонке и распространяется на все страницы каталога (общий: и для категорий, и для товаров).
Но у товаров (только товаров) есть абсолютно позиционированный блок с сертификатами (div_dop_info) также в правой колонке, поэтому у меня модуль с рекламой наезжал на блок с сертификатами.
Я сделал так:
<script type="text/javascript" language="JavaScript">
document.getElementById('catright').style.marginTop = document.getElementById('div_dop_info').offsetHeight + 'px';
</script>

А теперь мне нужно модуль с рекламой скрыть на страницах с товарами, но показывать на всех остальных:
<script type="text/javascript" language="JavaScript">
	var height = document.getElementById('div_dop_info').offsetHeight;
	if (height != 0)
		document.getElementById('catright').style.display = "none";
</script>

К сожалению если div_dop_info на странице отсутствует, то появляется ошибка
Ответить с цитированием
  #6 (permalink)  
Старый 11.01.2011, 15:02
Интересующийся
Отправить личное сообщение для r00mich Посмотреть профиль Найти все сообщения от r00mich
 
Регистрация: 10.01.2011
Сообщений: 10

Сообщение от SnikerS Посмотреть сообщение
ksa, возможно моих знаний не хватает.

Abocms. Темплейт содержит 3 файла: общий, категория, товар.
Модуль рекламы (catright) выводится в правой колонке и распространяется на все страницы каталога (общий: и для категорий, и для товаров).
Но у товаров (только товаров) есть абсолютно позиционированный блок с сертификатами (div_dop_info) также в правой колонке, поэтому у меня модуль с рекламой наезжал на блок с сертификатами.
Я сделал так:
<script type="text/javascript" language="JavaScript">
document.getElementById('catright').style.marginTop = document.getElementById('div_dop_info').offsetHeight + 'px';
</script>

А теперь мне нужно модуль с рекламой скрыть на страницах с товарами, но показывать на всех остальных:
<script type="text/javascript" language="JavaScript">
	var height = document.getElementById('div_dop_info').offsetHeight;
	if (height != 0)
		document.getElementById('catright').style.display = "none";
</script>

К сожалению если div_dop_info на странице отсутствует, то появляется ошибка
Сделай проверку на существование элемента

<script type="text/javascript" language="JavaScript">
	if (document.getElementById('div_dop_info')) {
		document.getElementById('catright').style.display = "none";
	}
</script>
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как обработать изменение масштаба окна в IE8 ? v_k Events/DOM/Window 1 09.08.2010 13:35
изменение курсора гость Events/DOM/Window 10 13.06.2010 23:10
Изменение высоты div TAILER Общие вопросы Javascript 11 11.04.2010 21:42
Изменение высоты iframe HelpeR Events/DOM/Window 4 22.10.2008 01:24
Динамическое изменение <input text> baal1988 Events/DOM/Window 4 24.08.2008 17:17