Добрый день, Гость! Представляем Вам наши форумы. Вы можете зарегистрироваться чтобы писать на форумах или зайдите под своим именем, если Вы уже регистрировались.
   
   


Форум
 CMS Status-X | Техническая помощь
         Модуль FAQ

Похожие темы  |  Печать страницы

Модуль FAQ


События Пятница, 27.11.2009, 00:24

Kurman

Группа: Пользователь
Ранг: Продвинутый
Cообщений: 247
Регистрация: 26.10.2009
Город: Moscow
Забыли подключить в навигацию? :)
В сборке наверное надо включить в навигацию пункт меню FAQ Хе или его специально отодвинули до лучших времен? Враво

Не критично, то для красоты:

Полу-вопрос полу-предложение по поводу FAQ.
Можно ли сделать его слайдером чтобы выдвигался?

Переделать так, чтобы не была портянка, где вверху содержание, а был только список вопросов, и при нажатии на вопрос, список отодвигался и под вопросом появлялся его ответ (можно как спойлер или через ajax) или на худой конец сделать древовидным, но чтобы ответы изначально были скрыты. и при нажатии на вопрос или плюсик, открывался ответ только на этот вопрос. (в ангине это очень удобно)

А то целая портянка ответов получится внутри категории, а если и изображения есть в ответах, то и другие глюки начинаются - другие ответы подлазят под изображение предыдущего ответа и т.п.

Пользователь офлайн
События Среда, 02.12.2009, 17:58

Kurman

Автор текущей темы
Группа: Пользователь
Ранг: Продвинутый
Cообщений: 247
Регистрация: 26.10.2009
Город: Moscow
Вот универсальный скриптик для показа/скрытия ответов:
Спойлер
Код
<script>
function show_hide_text(divObj,text) {
var div = divObj.parentNode.getElementsByTagName('div')[1];
if (div.style.display == 'none') {
div.style.display = 'block';
divObj.innerHTML = text;
} else {
div.style.display = 'none';
divObj.innerHTML = text;
}
}
</script>

<div onclick="show_hide_text(this,'ID/текст вопроса')">ID/текст вопроса</div>
<div style="display: none">Ответ</div>

Скрипт работает, но подключить в шаблон у меня не получилось, видимо копи-пастом тут не обойтись. Ржу нимагу
Если кому будет интересно )))

А это ещё более короткий:
Спойлер
Код
<script>
function op(obj) {
x=document.getElementById(obj);
if(x.style.display == "none") x.style.display = "block";
else x.style.display = "none"
}
</script>

<a href="#$ID$" onClick="op('div$ID$'); return false;">$TITLE$</a>
<div id="div$ID$" style="display:none">$MESSAGE$</div>
.
Пользователь офлайн
События Среда, 02.12.2009, 22:45

Status-X

Группа: Администратор
Cообщений: 3005
Регистрация: 23.10.2009
Город: Санкт-Петербург
Вариант шаблона faq с коротким скриптом.
В main.txt добавить FaqReply = "Читать ответ"
Вложения
showfaq.rar   (6 x загружено | 818 Байт)   



Благодарности Kurman
Пользователь офлайн
События Четверг, 03.12.2009, 02:50

Kurman

Автор текущей темы
Группа: Пользователь
Ранг: Продвинутый
Cообщений: 247
Регистрация: 26.10.2009
Город: Moscow
Отлично! Поставил твой шаблон, решил немного покопаться и вот что получилось:

Переделал на примере шаблона блока маленького опросника (все блоки же тоже слайдеры - выдвигаются и задвигаются, поэтому оттуда решил скопировать, чтобы ничего не менять) Смешно В main.txt тоже нчиего не добавляем - как тайтл использовал название самого вопроса.

Получилось как на скринах. Работает так же как и обычные блоки-слайдеры на главной странице (проверил на IE8, Firefox (Minefield) 3.7.a1pre, Opera 10.10 и d Google Crome)/
Разница от блоков на главной страница в том, что блоки по умолчанию открыты, а FAQ закрыт. Нажимаем - открывается, читаем. Нажимаем - закрывается обратно. Можно понажимать на каждый вопрос и пооткрывать их все.
(можно наверное было сделать чтобы при открытии другого ответа, предыдущий автоматически закрывался, но наверное это лишнее.)

Код моего шаблона showfaq.tpl:
Спойлер
Код
<div class="box_innerhead">{#Faq#}</div>
{strip}
{if !$faq}
<h3>{#Faq_nothing#}</h3>
{/if}
{foreach from=$faq item=item}
{if $item->Parent_Id == 0}
<br />
<h3><a href="index.php?p=faq&faq_id={$item->fid}&area={$area}&name={$item->Seotitle|seotitle}">{$item->visible_title|sysspe
cialchars}</a></h3&
{assign var="parent" value=$item->fid}
{else}
{section name=floop loop=$item->ulid}     {/section}
{if $smarty.request.faq_id==""}
<a href="index.php?p=faq&faq_id={$parent}&area={$area}&name={$item->Seotitle|seotitle}#{$item->fid}">{$item->visible_ti
tle}</a
<br />
{/if}
{section name=floop loop=$item->ulid}
{/section}
{/if}
{/foreach}
{if $faq}
<br />
{/if}
{if $smarty.request.faq_id!=""}
{foreach from=$faq item=faq_id}
<div class="round">
<div class="toggles_pollpanel closed" title="{$faq_id->Faq|sysspecialchars}">
<div class="boxes_body poll_back_small">
{$faq_id->text}
</div>
</div>
</div>
{/foreach}
{/if}
{/strip}

Ну и заодно с скринами прикрепляю сам шаблон.
Вложения
showfaq.zip   (5 x загружено | 554 Байт)   
Пользователь офлайн
События Четверг, 03.12.2009, 03:08

Status-X

Группа: Администратор
Cообщений: 3005
Регистрация: 23.10.2009
Город: Санкт-Петербург
Зря toggles прицепил, от каждого вопроса куки будут писать о состоянии панели,а использоваться не будет, а если вопросов много, то захламится


Пользователь офлайн
События Четверг, 03.12.2009, 05:31

Kurman

Автор текущей темы
Группа: Пользователь
Ранг: Продвинутый
Cообщений: 247
Регистрация: 26.10.2009
Город: Moscow
Да, заметил в шаблоне про куки, но не придал значения, видать зря Грустно

Придется значит пошаманить чтобы сделать нормальный вид.

#########
Гкхм..
Вроде никаких телодвижений для использования куки нету, используется только стиль блока для выдвижения/скрытия, без регистрации и отсчета куки. Вроде не должно это ничему мешать.. Победа
Пользователь офлайн


Похожие темы  |  Печать страницы  |   Предыдущая тема  |   Следующая тема

Быстрый переход:  
 

 Сейчас на сайте


Пользователей: 0, Гостей: 2

Поисковые боты: 11
BingBot(3), TrendictionBot, Unknown Bot(2), Googlebot(3), Inktomi Slurp, Yandex

 Статистика форума


  Темы Сообщения Пользователи
За сутки:
За неделю:
За месяц:
Всего:
Мы приветствуем нового участника: somik

 Дни рождения


Hazard (26)
Печать | Copyright © 2009 - 2016 Status-X All rights reserved | Powered by CMS Status-X 1.05 | Контакты