Не удается скрыть блок

голоса: 0

Здравствуйте. Хочу скрыть определенный div, если "полный текст материала" не заполнен, однако блок все равно не скрывается, хотя поле пустое... В чем может быть проблема?

 

<?if($MESSAGE$)?><div class="sectionTitle">
 <h2>Цитаты из книги $ENTRY_TITLE$</h2>
 </div> 
 <div class="fullDescr">
$MESSAGE$
 </div><?endif?> 
| Автор: | Категория: Дизайн сайта
Изменение категории | | Автор: Yuri_Geruk

Ответов: 2

голоса: 0
 
Лучший ответ

Попробуйте скриптом... поместить на страницу материала и коментариев к нему в самый низ.

<script>
$(function(){
var mess = $('.fullDescr p').length;
if(mess == 0){$('.sectionTitle').hide()};
});
</script>

| Автор:
Выбор ответа лучшим | | Автор: FaNaT
голоса: 0

Проверил работу условия, все работает корректно. Если поле описания совсем пустое и вы там не вставили ни единого символа, поле скрывается условием:

<?if($MESSAGE$)?><?endif?>

то есть, проблемы нет.

  • Важно, вообще ничего не делать в редакторе, даже пробел не нажимать так как в исходном коде редактора появится html код и в итоге описание все же выведется, но пустым, так как в редакторе присутствует html код.

<p>&nbsp; &nbsp;&nbsp;</p>

| Автор:
 

Пустое же? Даже подсчет кол-ва символов показывает, что ничего не введено. Ссылка на материал: http://literatura-osn.ucoz.net/books/uchebniki/zhuj_glotaj_2013/13-1-0-39

FaNaT,

Чтобы на странице материала и комментариев скрывалось поле если описания нет, найдите код:

<tr><td class="eMessage">$MESSAGE$ <?if($ATTACHMENTS$)?><div style="text-align:left;" class="eAttach"><!--<s3172>-->Прикрепления<!--</s>-->: $ATTACHMENTS$</div><?endif?></td></tr>

замените на:

<?if($MESSAGE$)?><tr><td class="eMessage">$MESSAGE$ <?if($ATTACHMENTS$)?><div style="text-align:left;" class="eAttach"><!--<s3172>-->Прикрепления<!--</s>-->: $ATTACHMENTS$</div><?endif?></td></tr><?endif?>

по сути весь HTML блок под описание должен быть в условии, вот пример http://freedomen.net/news/test/2020-02-26-4 все работает и описание не выводится и поле скрывается, аналогично и в шаблоне вида материалов скрывается http://freedomen.net/ первый материал тест.

Yuri_Geruk,

У меня шаблон не стандартный ведь, в нем нет таких блоков.

К тому же, нужный мне блок 

 <div class="sectionTitle">  <h2>Цитаты из книги $ENTRY_TITLE$</h2>  </div>   <div class="fullDescr"> 	$MESSAGE$  </div>

И так находится внутри условия, что видно из стартового поста. Если смотреть исходный код страницы, там видно, что внутри класса fullDescr находится еще какой-то div. Видимо, он как-то связан с рекламой. Но понятия не имею почему он именно в то место встроился. Платный акк пока не куплен, т.к. сайт не доделан полностью. В нем дело? 

FaNaT,

Вам код:

<div class="fullDescr">$MESSAGE$</div>

нужно заменить на:

<?if($MESSAGE$)?><div class="fullDescr">$MESSAGE$</div><?endif?>

Yuri_Geruk,

Либо я Вас неправильно понимаю, либо что, но это ведь ничего не даст)

Мне надо скрыть весь блок, который я приводил в стартовом посте, т.е. и заголовок H2. И даже если я добавлю условие на данный div, на странице он все равно останется по непонятной мне причине.

Вот такая

<?if($MESSAGE$)?><div class="sectionTitle">
 <h2>Цитаты из книги $ENTRY_TITLE$</h2>
 </div> <?endif?>
 <?if($MESSAGE$)?><div class="fullDescr">
 $MESSAGE$
 </div>
 <?endif?>

 

Скрин того, как выглядит исходный код страницы после того, как добавил еще одно условие

 

 

FaNaT,
То, что вы выделили (в коде у вас нет), это системная реклама Юкоз. Если у вас на сайте не оплачен пакет платных услуг, тогда это системная реклама.
...