Создать ответ 
Еще один пример спойлера с плавным открытием и закрытием на jquery
Автор Сообщение
Sergey1917 Не на форуме
Старшина
*

Сообщений: 51
У нас с: Apr 2013
Сообщение: #51
RE: Еще один пример спойлера с плавным открытием и закрытием на jquery
Обычно все страницы в Друпале верстаются в HTML и поэтому выставлен фильтр ввода Full HTML или Filtered HTML. Но иногда бывает нужно вставить в текст какой-нибудь код PHP, например, сниппет или код объявления или ссылки с биржи. Тогда приходится переключать фильтр ввода на PHP code. При этом переключении зачастую нарушается верстка страницы и приходится корректировать, например, добавлять дополнительно тег или теги <br>, чтобы текс смотрелся так же и не съезжал и не налезал и другое. Вот как то так.
(Последний раз сообщение было отредактировано 02.05.2013 в 12:12:40, отредактировал пользователь Sergey1917.)
02.05.2013 12:08:45
Найти все сообщения Цитировать это сообщение
Sergey1917 Не на форуме
Старшина
*

Сообщений: 51
У нас с: Apr 2013
Сообщение: #52
RE: Еще один пример спойлера с плавным открытием и закрытием на jquery
open_close у меня нигде больше не используется.
И теперь понятно, почему ваш файл тестовый со спойлером у меня работал нормально, а в тексте нет. Он же был формата PHP, вот и работал нормально. А на странице сайта вставлялся в текст формата HTML.
(Последний раз сообщение было отредактировано 02.05.2013 в 17:07:41, отредактировал пользователь Sergey1917.)
02.05.2013 15:27:48
Найти все сообщения Цитировать это сообщение
Admin Не на форуме
Верховный
Главнокомандующий
(Administrator)
*

Сообщений: 2,431
У нас с: Aug 2011
Сообщение: #53
RE: Еще один пример спойлера с плавным открытием и закрытием на jquery
Так тестовому файлу можно было с легкостью изменить расширение на .htm и от этого ничего бы не изменилось, т.к. в самом файле не используется PHP, а только CSS, HTML и javascript.
02.05.2013 15:56:22
Найти все сообщения Цитировать это сообщение
Sergey1917 Не на форуме
Старшина
*

Сообщений: 51
У нас с: Apr 2013
Сообщение: #54
RE: Еще один пример спойлера с плавным открытием и закрытием на jquery
Это же все работает на движке. И хранится текст HTML не в виде файла с расширением, а в базе SQL. Весь общий PHP код прописывается в файле *.php темы. А в страницы иногда тоже бывает нужно вставить php код, так сказать индивидуальный, только для этой страницы. Тогда я переключаю на странице фильтр формата ввода. И движок ее представляет уже как страницу формата php.

Вот вам пример более наглядный. На форумах при вставке сообщения, HTML разметка распознается как простой текст. Но если включен определенный фильтр, тогда могут выделяться, например, интернет адрес, email адрес. На более продвинутых еще есть отдельно кнопки, чтобы через фильтр правильно отобразить код HTML, код PHP и другие. А для админов включается фильтр Full HTML.
Для каждого сообщения ведь не создается отдельный файл, а только запись в базе данных. И страница показывается согласно ее настроек фильтра ввода.
Я наверное все это зря расписал, так как вы это лучше меня знаете. Может я ранее не совсем понятно описал проблему.

Чтобы все открытые спойлеры не закрывались, удалите строки:...
Удалил. Теперь не закрываются все одновременно. Одной проблемой меньше.
(Последний раз сообщение было отредактировано 02.05.2013 в 16:34:44, отредактировал пользователь Sergey1917.)
02.05.2013 16:31:15
Найти все сообщения Цитировать это сообщение
Admin Не на форуме
Верховный
Главнокомандующий
(Administrator)
*

Сообщений: 2,431
У нас с: Aug 2011
Сообщение: #55
RE: Еще один пример спойлера с плавным открытием и закрытием на jquery
Так Вы храните скрипт в базе?
А Вы не пробовали посмотреть исходный код страницы? Возможно, после записи/считывания скрипта из MySQL происходят какие-то изменения кода?

Есть предположение, что экранируются кавычки из-за чего скрипт и перестает работать.
Как вариант, попробуйте в нашем скрипте заменить все одинарные кавычки на двойные.
02.05.2013 17:38:57
Найти все сообщения Цитировать это сообщение
Sergey1917 Не на форуме
Старшина
*

Сообщений: 51
У нас с: Apr 2013
Сообщение: #56
RE: Еще один пример спойлера с плавным открытием и закрытием на jquery
Да нет же. Текст скпипта в файле *.php моей темы. В базе же страница контента с вставкой HTML кода спойлера. Если же этот контент из базы (с помощью фильтра ввода) вывести и показать как код php, тогда спойлер смотрится и работает нормально. А если как обычно, в виде HTML, тогда глючит открыть/закрыть и внешний вид (внизу появляется часть как бы открытого спойлера, где-то на 1/3 часть высоты закрытого блока).

Сейчас буду искать одинарные кавычки.

Замена на двойные кавычки в коде скрипта не помогла.

Ведь предыдущий вариант спойлера (без надписи открыть/закрыть) нормально работал при настройке фильтра ввода контента Full HTML. И полоса внизу не отображалась. Что-то с кодом не так.

Кстати. Ранее я заметил такую вещь. Это еще с предыдущим вариантом. Вставляю код, что вы предоставили - внешний вид нормальный. А после, уже когда верстал контент, между двумя спойлерами, лежащими друг над другом, появился неубираемый зазор. Оказалось, что для удобства работы со спойлером, я создал шаблон и внего вставил после <div class="spoiler"> комментарий для себя с пояснениями, вида <!-- комментарий -->. И из-за него и создавался зазор. Убрал коммент и зазор исчез.
(Последний раз сообщение было отредактировано 02.05.2013 в 18:43:13, отредактировал пользователь Sergey1917.)
02.05.2013 17:57:13
Найти все сообщения Цитировать это сообщение
Sergey1917 Не на форуме
Старшина
*

Сообщений: 51
У нас с: Apr 2013
Сообщение: #57
RE: Еще один пример спойлера с плавным открытием и закрытием на jquery
Продолжаю эксперементировать со спойлером. Изменил строчку с заголовком:
<div class="title"><span class="open_close">Закрыть</span><h3 class="title_h3">ЗАГОЛОВОК СПОЙЛЕРА №1</h3></div>
Теперь полоса переместилась из под спойлера и расположилась сверху. В этой полосе справа надпись: открыть или закрыть. Надпись отображается правильно, в зависимости от состояния блока. Т.е. работает спойлер правильно, только вот надпись открыть/закрыть переместилась в полосу над спойлером.
Может это вам как-то поможет?

Еще один вариант, <span class="open_close">Закрыть</span> перенес внутрь спойлера.
<div class="contents">Содержимое внутри спойлера №1<span class="open_close">Закрыть</span></div>

Спойлер нормально открывается и закрывается. В открытом спойлере появилась надпись (там, где она и должна была быть, справа) - "Закрыть". Полосы сверху нет. При закрытии спойлера надпись закрыть исчезает, а открыть не появляется. Работает почти как надо, за исключением надписи "Открыть", она не появляется. Но все же лучше, чем постоянная (неубирающаяся) надпись "Закрыть".
(Последний раз сообщение было отредактировано 02.05.2013 в 19:50:13, отредактировал пользователь Sergey1917.)
02.05.2013 19:03:53
Найти все сообщения Цитировать это сообщение
Admin Не на форуме
Верховный
Главнокомандующий
(Administrator)
*

Сообщений: 2,431
У нас с: Aug 2011
Сообщение: #58
RE: Еще один пример спойлера с плавным открытием и закрытием на jquery
У меня, если я изменю строчку с заголовком на:
<div class="title"><span class="open_close">Закрыть</span><h3 class="title_h3">ЗАГОЛОВОК СПОЙЛЕРА №1</h3></div> абсолютно ничего не меняется.

Может у Вас в шаблоне в CSS файле что-то необычное прописано для <div>, <span> и <h3>. Как вариант для проверки, попробуйте отключить все CSS кроме нашего.
02.05.2013 19:47:49
Найти все сообщения Цитировать это сообщение
Sergey1917 Не на форуме
Старшина
*

Сообщений: 51
У нас с: Apr 2013
Сообщение: #59
RE: Еще один пример спойлера с плавным открытием и закрытием на jquery
У меня, если я изменю строчку с заголовком на:
<div class="title"><span class="open_close">Закрыть</span><h3 class="title_h3">ЗАГОЛОВОК СПОЙЛЕРА №1</h3></div> абсолютно ничего не меняется.

Значит у вас весь код представляется движком по умолчанию в формате PHP. А на Друпале, Джумле, Вордпрессе по умолчанию контент выводится в формате HTML. Если я у себя переключаю фильтр формата ввода в PHP у меня тоже спойлер отображается нормально и так:
<div class="title"><span class="open_close">Закрыть</span><h3 class="title_h3">ЗАГОЛОВОК СПОЙЛЕРА №1</h3></div>
и так:
<div class="title"><h3 class="title_h3">ЗАГОЛОВОК СПОЙЛЕРА №3</h3><span class="open_close">Закрыть</span></div>.

Но повторюсь, предыдущий код спойлера (без надписи открыть/закрыть) работал нормально в формате контента HTML, а этот нет.

Отключил общий CSS. Использую в данный момент запись:
<div class="title"><span class="open_close">Закрыть</span><h3 class="title_h3">ЗАГОЛОВОК СПОЙЛЕРА №1</h3></div>

Спойлер заработал как и должно быть. Надпись открыть/закрыть справа на блоке. Но все это при включенном фильтре формата ввода PHP. При переключении в обычный режим, т.е. HTML - та же проблема. Ничего не изменилось. Значит дело не в этом, не в моем CSS.
(Последний раз сообщение было отредактировано 02.05.2013 в 22:16:07, отредактировал пользователь Sergey1917.)
02.05.2013 20:21:39
Найти все сообщения Цитировать это сообщение
Admin Не на форуме
Верховный
Главнокомандующий
(Administrator)
*

Сообщений: 2,431
У нас с: Aug 2011
Сообщение: #60
RE: Еще один пример спойлера с плавным открытием и закрытием на jquery
Сравните исходный код страничек при форматах ввода PHP и HTML, тогда будет ясно, в чем загвоздка.
02.05.2013 23:14:47
Найти все сообщения Цитировать это сообщение
Создать ответ 


Переход:


Пользователи просматривают эту тему: 1 Гость(ей)


LiveInternet
© Copyright 2011-2024 by UsefulScript.ru