Обсуждение шаблона:ZmQuiz
Синтаксис без шаблонов[править]
Раз тест целиком рисуется скриптом, то не упростить ли синтаксис
{{ZmQuiz |тип=очки |вопросы= {{ZmQuiz-вопрос |вопрос=Вы любите розы? |ответ1=Да | очки1=3 |ответ2=Нет | очки2=2 |ответ3=Затрудняюсь ответить | очки3=0 }} {{ZmQuiz-вопрос |вопрос=Кто подставил кролика Роджера? |ответ1=Я | очки1=7 |ответ2=Не я | очки2=5 }} ...
до какого-нибудь такого:
|тип=очки * Вы любите розы? Да | очки=3 Нет | очки=2 Затрудняюсь ответить | очки=0 * Кто подставил кролика Роджера? Я | очки=7 Не я | очки=5 ...
Скрипту всё равно, что искать, $('.zmQuizAnswer')
или text.match(/^\*/m)
. — Edward Chernenko? 18:15, 10 июля 2017 (UTC)
Набросал пример парсера. На тестовой странице выдаёт
var options = {"тип":"очки"};
var questions = {"Вы любите розы?":{"Да":{"очки":"3"},"Нет":{"очки":"2"},"Затрудняюсь ответить":{"очки":"0"}},"Кто подставил кролика Роджера?":{"Я":{"очки":"7"},"Не я":{"очки":"5"}}}
— Edward Chernenko? 19:27, 10 июля 2017 (UTC)
- Класс! Да, это имеет смысл однозначно. Счас посмотрю, попробую переписать. — ГиМЦ-Д 01:51, 11 июля 2017 (UTC)
Возврат к предыдущему шагу кнопкой Back браузера[править]
Сейчас у всех шагов квеста один и тот же URL, поэтому кнопкой Back нельзя вернуться к предыдущему шагу (автору — чтобы проверить квест на ошибки, читателю — чтобы прочитать весь квест). Исправить это можно так:
- Когда мы хотим перейти на вопрос №5, мы меняем URL страницы:
window.location.hash = '#q5';
(страница при этом не перезагружается, просто добавляется #q5 в конце URL). - Сама отрисовка вопроса находится в событии onhashchange:
$( window ).on( 'hashchange', function() { /* тут проверяем window.location.hash и узнаём, какой вопрос рисовать */ var nr = parseInt( window.location.hash.replace( /^#q/, '' ) ); if ( !nr ) { return; /* Не начинается с #q - значит, не наш anchor */ } /* Тут рисуем вопрос номер nr */ } );
- Таким образом, если пользователь с вопроса #q5 перешёл на вопрос #q7 и нажал кнопку Back, то URL поменяется на #q5, и код снова покажет вопрос №5.
— Edward Chernenko? 09:34, 11 июля 2017 (UTC)
Если слегка переделать...[править]
Тип "квест", все варианты вверх, в строчку. Как "меню" получается. Нажал кнопочку - ты в одном разделе портала. Нажал другую ссылку - в другом. Как вам идея? Или не получится? 0 и голуби (°|¡\🌑|_|В|^|🐦)(⚒|ð|xièxie) 13:13, 28 марта 2019 (UTC)
- В {{ZmQuiz-вопрос}} просто вопрос поставить в конец, тип выставить «квест». 0 и голуби (°|¡\🌑|_|В|^|🐦)(⚒|ð|xièxie) 13:15, 28 марта 2019 (UTC)
- Попробуйте пройти квест Отшей блондинку и восхититься его рандомной упоротостью. Тот Самый Профессор (обсуждение) 13:21, 28 марта 2019 (UTC)