Не работает js спойлер

голоса: 0
Здравствуйте!  Не работает js код на страницах сайта, но когда захожу под логином то всё работает.  Сам код  <a style="float:right" href="#" class="but">Подробнее</a></div><script>$(document).ready(function(){$('.but').click(function(){$(this).toggleClass('active');$('.author_card').toggleClass('opener');if (!$(this).data('status')) {$(this).data('status', true).html('Скрыть');} else {$(this).data('status', false).html('Подробнее');}});});</script>  Почему то не разворачивается текст внутри, а когда вхожу с систему то всё работает.  Ссылка на страницу с нерабочим кодом: https://vknige.net/load/k/konstantin_kalbazov/817
| Автор: | Категория: JavaScript

Ответов: 1

голоса: 0

Слишком накрученный вариант у вас и много лишнего. Посмотрите решение в материале https://www.ucoz.ru/help/design/plavnoe-razvorachivanie-sozdanie-ajax-okon

| Автор:
Так мне нужен чтобы часть текса была видна, а остальная разворачивалась
Николай58,
вставите указанный в инструкции код после текста который не надо скрывать
Николай58,
Как правильно поправили выше, скриптом заворачивайте лишь ту чать которую нужно скрыть и разворачивать, в итоге будет аналог краткого описания и при нажатии на развернуть будет отображаться скрытая часть текста.
Yuri_Geruk,
У меня этот текст заключен в тег $CAT_DESCR$ - описание категории. То есть я не могу прописать для всех категорий.  Если только менять в описании категорий, но это не вариант. Их очень много
Николай58,
Тогда понятно почему ваш скрипт не работает, так как он не настроен для работы с $CAT_DESCR$. И второй пример так же не рассчитан для работы с операторами, лишь для текста который вы вручную будете заворачивать в код, без автоматизации.
Yuri_Geruk,
Так он же работает, но только когда я логинюсь как админ.
...