묻고답하기
고수분들께...혹시 랜덤으로 문제들이 나오게금 가능할까요?
2019.06.01 01:37
도와 주세요.
밑의 내용에서 문제들(question) 1,2,3 이 있는데 순서대로 나옵니다.
그런데 혹시 랜덤(random)으로 나오게금 가능할까요?
어느 부분을 수정하면 될까요?
감사합니다.
밑의 사이트에서 가져왔습니다.
https://github.com/furkantasel/html-word-game
<html>
<head>
<script src="jquery.min.js"></script>
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="bootstrap.min.css">
<!-- Optional theme -->
<link rel="stylesheet" href="bootstrap-theme.min.css">
<!-- Latest compiled and minified JavaScript -->
<script src="bootstrap.min.js"></script>
<script type="text/javascript">
var currentQuestion = 0;
var currentLetter = 0;
var currentScore = 0;
var currentQuestionScore =0;
var openedLetterIndices = [];
var openedLetters = [];
var question_set = [ {question_number:1, question:"Star of the EARTH?", answer:"SUN", letters:3},
{question_number:2, question:"Occupation", answer:"JOB", letters:3},
{question_number:3, question:"Gossip", answer:"GRAPEWINE", letters:9},
];
$(document).ready( function()
{
$("#mainDiv").hide();
$("#letterDiv").hide();
$("#guessDiv").hide();
$("#goDiv").hide();
$("#scoreDiv").hide();
$("#goBtn").click(function(){nextWithAnswer($("#guess").val())});
});
function start()
{
$("#startDiv").hide();
$("#mainDiv").show();
$("#letterDiv").show();
$("#guessDiv").show();
$("#goDiv").show();
$("#scoreDiv").show();
currentQuestionScore = question_set[currentQuestion].letters*100;
$("#questionScore").html(currentQuestionScore);
$("#score").html(currentScore);
$("#question").html("<h1>"+question_set[currentQuestion].question+"</h1>");
//$("#goDiv").html("<span class='btn btn-success btn-md' id='goBtn' onclick='nextWithAnswer("+$("#guess").text()+")'>GO!</span>");
var buttons ="";
for (var i = 0; i < question_set[currentQuestion].letters; i++) {
buttons= buttons + "<span class='btn btn-primary btn-lg'>-</span>";
};
$("#letters").html(buttons);
}
function giveLetter()
{
if(currentQuestionScore>0){
currentQuestionScore = currentQuestionScore - 100;
$("#questionScore").html(currentQuestionScore);
var flag = true;
var indexToBeOpened;
while(flag)
{
indexToBeOpened = Math.floor(Math.random()*question_set[currentQuestion].letters);
flag = $.inArray(indexToBeOpened,openedLetterIndices)>=0;
}
openedLetters.push(question_set[currentQuestion].answer.substring(indexToBeOpened,indexToBeOpened+1));
openedLetterIndices.push(indexToBeOpened);
var buttons = "";
for (var i = 0; i < question_set[currentQuestion].letters; i++) {
if($.inArray(i,openedLetterIndices)>=0)
{
buttons= buttons + "<span class='btn btn-primary btn-lg'>"+question_set[currentQuestion].answer.substring(i,i+1)+"</span>";
}else
{
buttons= buttons + "<span class='btn btn-primary btn-lg'>-</span>";
}
};
$("#letters").html(buttons);
if(openedLetterIndices.length == question_set[currentQuestion].letters)
{
$("#next").html("<span class='btn btn-warning btn-lg' onclick='next()'>Next</span>");
}
}
}
function next()
{
if(currentQuestion!= question_set.length-1)
{
$("#next").html("");
currentQuestion+=1;
currentScore+= currentQuestionScore;
currentQuestionScore = question_set[currentQuestion].letters*100;
currentLetter = 0;
openedLetterIndices = [];
openedLetters = [];
$("#questionScore").html(currentQuestionScore);
$("#score").html(currentScore);
$("#question").html("<h1>"+question_set[currentQuestion].question+"</h1>");
var buttons ="";
for (var i = 0; i < question_set[currentQuestion].letters; i++) {
buttons= buttons + "<span class='btn btn-primary btn-lg'>-</span>";
};
$("#letters").html(buttons);
}else
{
finale("");
}
}
function nextWithAnswer (answer) {
if(currentQuestion!= question_set.length-1)
{
if (answer.toLowerCase() === question_set[currentQuestion].answer.toLowerCase())
{
alert('Correct!');
currentQuestion+=1;
currentScore+= currentQuestionScore;
currentQuestionScore = question_set[currentQuestion].letters*100;
currentLetter = 0;
openedLetterIndices = [];
openedLetters = [];
$("#questionScore").html(currentQuestionScore);
$("#score").html(currentScore);
$("#question").html("<h1>"+question_set[currentQuestion].question+"</h1>");
var buttons ="";
for (var i = 0; i < question_set[currentQuestion].letters; i++) {
buttons= buttons + "<span class='btn btn-primary btn-lg'>-</span>";
};
$("#letters").html(buttons);
}else
{
alert('False!');
currentQuestion+=1;
currentScore-= currentQuestionScore;
currentQuestionScore = question_set[currentQuestion].letters*100;
currentLetter = 0;
openedLetterIndices = [];
openedLetters = [];
$("#questionScore").html(currentQuestionScore);
$("#score").html(currentScore);
$("#question").html("<h1>"+question_set[currentQuestion].question+"</h1>");
var buttons ="";
for (var i = 0; i < question_set[currentQuestion].letters; i++) {
buttons= buttons + "<span class='btn btn-primary btn-lg'>-</span>";
};
$("#letters").html(buttons);
}
}else
{
finale(answer);
}
}
function finale(answer)
{
$("#mainDiv").hide();
$("#letterDiv").hide();
$("#guessDiv").hide();
$("#goDiv").hide();
$("#scoreDiv").hide();
$("#startDiv").show();
if (answer.toLowerCase() === question_set[currentQuestion].answer.toLowerCase())
{
$("#startDiv").html("<div class='text-center'><h1>Your final score is "+(currentQuestionScore + currentScore)+"</h1><span class='btn btn-success btn-lg' onclick='location.reload()'>Replay</span></div>");
}else
{
$("#startDiv").html("<div class='text-center'><h1>Your final score is "+(currentScore-currentQuestionScore )+"</h1><span class='btn btn-success btn-lg' onclick='location.reload()'>Replay</span></div>");
}
}
</script>
</head>
<body>
<div class='row'>
<div class='jumbotron' id='startDiv'>
<div class='text-center'>
<h1>Push the button to START!</h1>
<span class='btn btn-success btn-lg' onclick='start()'>GO!</span>
</div>
</div>
</div>
<div class='row'>
<div class='jumbotron' id='mainDiv'>
<div class='text-center'>
<p>Question Score = <span id='questionScore'></span></p>
<span id='question'></span>
<span id='letters'></span><br><br>
<span id='next'></span>
</div>
</div>
</div>
<div class='row'>
<div class='col-md-2 col-md-offset-1' id='letterDiv'>
<span class='btn btn-danger btn-md' onclick="giveLetter()">Give me a letter</span>
</div>
<div class='col-md-4' id='guessDiv'>
<div class='input-group' >
<span class='input-group-addon' >My guess is: </span>
<input type='text' class='form-control' placeholder='Guess' id='guess'>
</div>
</div>
<div class='col-md-2' id='goDiv'>
<span class='btn btn-success btn-md' id="goBtn">GO!</span>
</div>
<div class='col-md-3' id='scoreDiv'>
Score: <span id='score'></span>
</div>
</div>
</body>
</html>
글쓴이 | 제목 | 최종 글 |
---|---|---|
XE | 공지 글 쓰기,삭제 운영방식 변경 공지 [16] | 2019.03.05 by 남기남 |
아데나 | 게시판 위젯을 수정하고싶은데... [2] | 2019.05.31 by 아데나 |
꿈틀잉 |
확장변수(사용자정의) 날짜피커 질문드립니다.
[4]
![]() | 2019.05.31 by 아데나 |
아데나 | 고수님들 부탁드려용 ㅠ 사용자정의 항목 디폴트값.. | |
미라클캣 | 코어업데이트 [5] | 2019.05.30 by 미라클캣 |
Enki | 위지위그 이미지 크기 조정방법 [1] | 2019.05.30 by 제이와이엔소프트 |
hatali | 멀티도메인 적용을 위한 선택은? xe와 라이믹스 [2] | 2019.05.29 by hatali |
아데나 | 게시판의 사용자정의 부분에 대한 문제 [1] | 2019.05.29 by 아데나 |
인천한량 |
xe 복구도중 에러코드 설명좀 부탁 드립니다
[2]
![]() | 2019.05.29 by 인천한량 |
처음부터끝까지 | php 페이지를 포함시키려고 하는대 플러그인은 없나요? [2] | 2019.05.29 by 제이와이엔소프트 |
아데나 | mysql의 rollup명령어 구분 [1] | 2019.05.29 by 아데나 |
카카마 | Kim Tajo님 xedition / 메인1 섹션 이미지 업데이트 방법 좀?? | |
Enki | 댓글창이랑 댓글리스트 바꾸는 방법 [2] | 2019.05.28 by Enki |
Enki | 추천버튼 비추천버튼 간격 띄우는법 | |
커피넉잔 |
core에 연결된 CDN 해제하는 방법을 모르겠습니다.
[2]
![]() | 2019.05.28 by 커피넉잔 |
에그 | 관리자로 로그인하면 접속오류가 뜹니다. | |
삐리삐리뽕 | 게시판 댓글 내용 [3] | 2019.05.28 by 제이와이엔소프트 |
Enki |
스케치북5 댓글 창 숨었다 내려가지는거 없애는법
![]() | |
Enki | rest부트스트랩이랑 simple스트랩 충돌문제인데 | |
개박사 | 사용 용도가 특이해서 문의 드립니다. [2] | 2019.05.27 by 개박사 |
구름한점 | 특정 크롤링 봇과 일반사용자에게 각각 다른 화면을 보여줄 수 있을까요? |
function getNumber(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
랜덤으로 숫자 뽑는 함수를 넣어주시고,
getNumber(1, 3);
번호 뽑는데서 함수 호출해주시면 될 것 같습니다.