Проблемы вёрстки блока, добавление дивов в блок.

Добрый день. Есть такого рода проблема.
При вёрстки блока «Прямой эфир» понадобилось ввести два дополнительных дива, при этом пришлось дивы cl и cr закрыть непосредственно после
<ul class="block-nav">


Т.е. был вот такой стандартный блок:

                             <div class="cl"><div class="cr">
					<ul class="block-nav">						
						<li><strong></strong><a href="#" id="block_stream_topic" onclick="lsBlockStream.toggle(this,'topic_stream'); return false;">{$aLang.block_stream_topics}</a><sub></sub></li>
						<li class="active"><a href="#" id="block_stream_comment" onclick="lsBlockStream.toggle(this,'comment_stream'); return false;">{$aLang.block_stream_comments}</a><em></em></li>
						{hook run='block_stream_nav_item'}
					</ul>
				<div class="block-content">
					{literal}
						<script language="JavaScript" type="text/javascript">
						var lsBlockStream;
						window.addEvent('domready', function() { 
							lsBlockStream=new lsBlockLoaderClass();
						});
						</script>
					{/literal}					
					
					{$sStreamComments}
					</div>
				</div></div>


А стал таким (добавлено два дива kl и kr)
<div class="cl"><div class="cr">
					<ul class="block-nav">						
						<li><strong></strong><a href="#" id="block_stream_topic" onclick="lsBlockStream.toggle(this,'topic_stream'); return false;">{$aLang.block_stream_topics}</a><sub></sub></li>
						<li class="active"><a href="#" id="block_stream_comment" onclick="lsBlockStream.toggle(this,'comment_stream'); return false;">{$aLang.block_stream_comments}</a><em></em></li>
						{hook run='block_stream_nav_item'}
					</ul>
				</div></div>
				<div class="kl"><div class="kr">
				<div class="block-content">
					{literal}
						<script language="JavaScript" type="text/javascript">
						var lsBlockStream;
						window.addEvent('domready', function() { 
							lsBlockStream=new lsBlockLoaderClass();
						});
						</script>
					{/literal}					
					
					{$sStreamComments}
					</div>
				</div></div>


В результате появилась следующая ошибка при попытке переключения между последними комментариями и публикациями. (отловил в IE)
Сообщение: 'getParent(...).getChildren(...).0' -  есть null или не является объектом
Строка: 324
Символ: 319
Код: 0

Т.е., насколько я понял, не отрабатывает скрипт. Подскажите, что можно сделать в этом случае. Возможно ли как-то изменить скрипт, чтобы преодолеть эту проблему или стоит поискать какой-то другой путь?

9 комментариев

avatar
С кодировкой случайно при редактировании не накосячили?
avatar
Нет, не накосячил. По крайней мере в block.stream.tpl всё нормально.
avatar
нечего не накосячили с колировкой, просто под Вашу верстку нужно немного подправить \templates\skin\new\js\block_loader.js
avatar
Спасибо за подсказку, мне уже ниже подсказали. )
avatar
откройте файл \templates\skin\new\js\block_loader.js
строка 52:

var blockContent=blockNav.getParent('div').getChildren('div.'+this.options.classes_nav.content)[0].set('html','');


попробуйте заменить на:

var blockContent=blockNav.getParent('div').getChildren ('div.kl') [0].getChildren('div.kr') [0].getChildren('div.'+this.options.classes_nav.content)[0].set('html','');
avatar
Тоже самое. Кэш почистил.
avatar
ах ну да.

тогда на вот это:
var blockContent=blockNav.getParent('div').getParent('div').getParent('div').getChildren ('div.kl') [0].getChildren('div.kr') [0].getChildren('div.'+this.options.classes_nav.content)[0].set('html','');
avatar
Спасибо. Помогло.
avatar
Вот и хорошо)
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.