장고 + HTML + JavaScript에서 음악 퀴즈 코딩 중이며 완전히 갇혀 있습니다.(JQuery, AJAX?)
내가 원하는 것은 플레이어가 해결책을 찾기 위해 만든 시간을 계산하는 것입니다. 하지만 지금은 음악 로딩 시간 때문에 동기화되지 않았습니다. 내 생각은 플레이어가 시작했을 때 무언가를 장고에 보내고 그 순간 장고에 time.time()을 저장하는 것입니다 (페이지를 새로 고치지 않고!). 그 후, 플레이어가 그가 생각한 노래를 클릭하면, 그것은 폼을 게시하고, 나는 이전의 것과 새로운 time.time()을 비교하고 끝났습니다.
모든 것이 잘 작동하지만 Jquery와 Ajax에 대해 많이 알지 못하며 페이지를 새로 고치지 않고 게시하는 방법이라고 생각합니다.
내 자바 스크립트 (이것은 단지 좋은 여기에 타이머가보고하지만, 사람은 그가 원하는 시간을 게시 할 수 있기 때문에, 자바 스크립트 계산 시간을 게시하지 않을 것입니다!) :
function onPlayerStateChange(event) {
if (event.data == YT.PlayerState.PLAYING){
//post Start to Django
setTimeout(function decompte() {
setTimeout(function() {
te--;
if (te<0) {
te = 9; sc--
}
time = sc+" s "+te;
form.time.value=time;
if (end) {
return;
}
else if (sc == 0 & te == 0) {
zero()
}
decompte();
}, 100);
},0); //launch the function... Not a very esthetic way to do it but it works !
}
}
아이디어가 있으십니까?
난 당신이 장고 페이지에서 얻을 수있는 메시지를 기다리는 동안, 그렇지 않으면 당신은 변수 지연이있을 것이다 자바 스크립트 시간을 사용 할 필요가 있다고 생각합니다. 최소화 된 .js 파일에 자바 스크립트를 넣으면 해킹을 시도하는 사람들이 많이있을 것입니까? – PhoebeB
지연은 아무 것도 없으며 잠재적으로 해킹 문제는 내 자바 스크립트 파일을 이해하는 것보다 내 POST 요청을 차단하는 데 더 많은 도움이 될 것입니다 ... –