This question already has answers here:
how do I “jump” to a specific element?
(2个答案)
3年前关闭。
我有一个脚本来显示我的测验。一次显示一个问题,当您单击下一步时,旧问题消失,新问题消失。
我还制作了一个引用问题的表-该表是使用更多js生成的。我想这样做,以便当我单击等“问题1”时,当前显示的问题淡出,问题1淡入(我在这里说淡入淡出,但实际上是可以立即看到的动画)。如果我单击“问题2”,除了出现问题2以外,都会发生相同的事情。此表的要点是,因此您可以使用该表浏览所有问题。
我意识到在这种情况下,“上一个按钮”会更直观,但是由于各种原因,我不希望使用上一个按钮。
这是我到目前为止的摘要:
(2个答案)
3年前关闭。
我有一个脚本来显示我的测验。一次显示一个问题,当您单击下一步时,旧问题消失,新问题消失。
我还制作了一个引用问题的表-该表是使用更多js生成的。我想这样做,以便当我单击等“问题1”时,当前显示的问题淡出,问题1淡入(我在这里说淡入淡出,但实际上是可以立即看到的动画)。如果我单击“问题2”,除了出现问题2以外,都会发生相同的事情。此表的要点是,因此您可以使用该表浏览所有问题。
我意识到在这种情况下,“上一个按钮”会更直观,但是由于各种原因,我不希望使用上一个按钮。
这是我到目前为止的摘要:
var totalQuestions = $('.questions').length;
var currentQuestion = 0;
var $questions = $('.questions');
$questions.hide();
$($questions[currentQuestion]).fadeIn(0);
$('#btn-next').click(function() {
$($questions[currentQuestion]).fadeOut(0, function() {
currentQuestion++;
if (currentQuestion == totalQuestions) {
//do something here
} else {
$($questions[currentQuestion]).fadeIn(0);
}
});
tableControl(totalQuestions);
})
var tableControl = function(numberOfQuestions) {
for (var i = 0; i < numberOfQuestions; i++) {
$('#quiz-table').append(
"<tr>" +
"<td> <a> Question " + (i + 1) + " </a></td>" +
"</tr>"
);
}
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
<h1>Quiz 1</h1>
</div>
<div class="questions">
<p>Question 1</p>
<form class="options">
<input class="option" type="radio">1<br>
<input class="option" type="radio">2<br>
<input class="option" type="radio">3<br>
<input class="option" type="radio">4</br>
</form>
</div>
<div class="questions">
<p>Question 2</p>
<form class="options">
<input class="option" type="radio">1<br>
<input class="option" type="radio">2<br>
<input class="option" type="radio">3<br>
<input class="option" type="radio">4</br>
</form>
</div>
<div class="questions">
<p>Question 3</p>
<form class="options">
<input class="option" type="radio">1<br>
<input class="option" type="radio">2<br>
<input class="option" type="radio">3<br>
<input class="option" type="radio">4</br>
</form>
</div>
<div class="questions">
<p>Question 4</p>
<form class="options">
<input class="option" type="radio">1<br>
<input class="option" type="radio">2<br>
<input class="option" type="radio">3<br>
<input class="option" type="radio">4</br>
</form>
</div>
<input type="button" id='btn-next' value="Next">
<table id='quiz-table'>
<tr>
<th>Question</th>
</tr>
</table>
最佳答案
您可以使用行索引来引用问题的索引
$('#quiz-table').on('click', 'tr',function(){
var rowIdx = $(this).index();
// hide all, show the corresponding indexed one
$('.questions').hide().eq(rowIdx-1).fadeIn();
});
09-25 18:32