Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.04.2020, 17:05
Кандидат Javascript-наук
Отправить личное сообщение для Cdelphi78 Посмотреть профиль Найти все сообщения от Cdelphi78
 
Регистрация: 30.11.2015
Сообщений: 117

Квиз форма на сайт
Здравствуйте! Мне необходимо реализовать квиз форму на сайте..я не прошу чтобы мне написали готовый код..но хотя бы подсказали куда копать и чего написать как организовать переходы между окнами и сохранение данных?

Или может быть готовый jquery плагин есть какой?
Ответить с цитированием
  #2 (permalink)  
Старый 13.04.2020, 08:57
MOT MOT вне форума
Аспирант
Отправить личное сообщение для MOT Посмотреть профиль Найти все сообщения от MOT
 
Регистрация: 30.08.2019
Сообщений: 52

Cdelphi78,
<style>
#quiz {
width: 200px;
height: 200px;
border: 1px solid black;
}
.result1, .result2, .result3, .result4 {
display: none;
position: relative;
color: #216558;
}
#quiz > #answer1:checked + .span_result1 > .result1 {
display: block;
bottom: -120px;
}
#quiz > #answer2:checked + .span_result2 > .result2 {
display: block;
bottom: -100px;
}
#quiz > #answer3:checked + .span_result3 > .result3 {
display: block;
bottom: -80px;
}
#quiz > #answer4:checked + .span_result4 > .result4 {
display: block;
bottom: -60px;
}
</style>
<form id="quiz">
    <b><i>Как вы произносите название "JavaScript"?</i></b><br>
    <input type="radio" name="quiz" id="answer1"><span class="span_result1">ДжаваСкрипт<div class="result1">Вы выбрали "ДжаваСкрипт"</div></span><br>
    <input type="radio" name="quiz" id="answer2"><span class="span_result2">ЯваСкипт<div class="result2">Вы выбрали "ЯваСкрипт"</div></span><br>
    <input type="radio" name="quiz" id="answer3"><span class="span_result3">ДжабаСкрипт<div class="result3">Вы выбрали "ДжабаСкрипт"</div></span><br>
    <input type="radio" name="quiz" id="answer4"><span class="span_result4">ЕваСкрипт<div class="result4">Вы выбрали "ЕваСкрипт"</div></span>
</form>
<script>
document.addEventListener( "DOMContentLoaded" , function() {
 let k = localStorage.indexAnswer;
 const inp = document.querySelectorAll('[name="quiz"]');
 const click = (elem, i) => elem.addEventListener("click", event =>
 (localStorage.indexAnswer === void 0) ? (localStorage.indexAnswer = i) :
 event.preventDefault()
 );
 inp.forEach(click);
 if(k !== void 0) inp[k].checked = true;
 });

</script>

Понятно, это набросок. Но уже хоть что-то ( в лице запрета на изменение переключателя). Насчёт css стилей - чтобы не использовать js пришлось начудить, но зато всё работает
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не запускается сайт test.ru usa-1450 Серверные языки и технологии 3 06.09.2018 20:21
Огромная форма serj0110 Элементы интерфейса 21 19.01.2017 11:51
Форма отправки сообщения с сайта hardwolf Элементы интерфейса 17 24.10.2016 15:00
Не работает всплывающая форма на второстепенных страницах denjer Javascript под браузер 0 22.04.2016 21:30
Нужна всплывающая форма. Сайт на HTML samael Работа 3 18.06.2012 22:45