我正在制作一个琐事游戏而且我最后一部分被困住了。我正在显示所有正确,错误,未回答的问题。
function displayResults() {
$('#timer').html("Correct answers: " + correct);
$('#fiveSec').html("Incorrect answers: " + incorrect);
$('#question').html("Unaswered: " + unanswered);
$('#correct-answer').empty();
$('#answers').append('<input type="button" class="btn btn-primary" "start-button" value="Play Again">');
}
在这个功能的最后,在按钮内部,我需要有一个方法来启动游戏再次运行的这个功能。
$('#start-button').on('click', function() {
currentQuestion = 0;
correct = 0;
incorrect = 0;
unanswered = 0;
count = 30;
five = 5;
currentTeamsLength = 0;
displayQuestion();
$(this).remove();
});
所以这个#start-button
是启动游戏的同一个按钮,我希望在游戏结束后再次在displayResults
内再次运行它。有任何想法吗?
答案 0 :(得分:1)
您需要re-trigger
来自click
的{{1}}事件displayQuestions()
,如下所示,
$('.start-button').trigger('click');
请按以下方式修改按钮,
$('#answers').append('<input type="button" class="btn btn-primary start-button" value="Play Again">');
您还需要使用委托方法
绑定click事件$("#answers").on('click', '.start-button', function(){
// your code logic
});
你需要使用类选择器,因为按钮上没有id。
答案 1 :(得分:0)
Jsut制作一个像这样的新功能
<jndiEntry jndiName="analytics/shards" value='"5"'/>
<jndiEntry jndiName="analytics/masternodes" value='"node1.domain.net:9600,node2.domain.net:9600"'/>
<jndiEntry jndiName="analytics/discovery.zen.minimum_master_nodes" value='"2"'/>
<jndiEntry jndiName="analytics/nodename" value='"node1"'/>
<jndiEntry jndiName="analytics/replicas" value='"2"'/>
从displayResults
调用此函数或者
您可以手动触发displayResult中的点击,如
$('#start-button').on('click', startGame)
function startGame(){
currentQuestion = 0;
correct = 0;
incorrect = 0;
unanswered = 0;
count = 30;
five = 5;
currentTeamsLength = 0;
displayQuestion();
$(this).remove();
});
答案 2 :(得分:0)
首次按下时更改按钮文本,然后根据按钮文本放置If条件然后执行另一个功能。 (我希望这就是你所问的,你的问题不是很清楚)
答案 3 :(得分:0)
想出来。我愚蠢的错误。一切都在$('#answers')。append('');我在id ='#start-button'中不需要#。之后我改变了$('#start-button')。on('click',function()到$(document).on('click','start-button'function()然后我不得不清除一些div在displayResults函数
中