2017-10-10 1 views
-3

jQuery를 사용하여 h1 태그에 math.random 번호를 표시하고 어떤 이유로 작동하지 않습니다. 무엇이 잘못되는지 잘 모르겠습니다. 어떤 이유로 함수를 꺼낼 때 작동하지만 왜 그런가요?h1 태그에 Math.random()을 표시합니다. jQuery

HTML

<h1></h1> 

jQuery를

당신은 실제로이 작업을 수행 할 수 있도록하기 위해 time() 함수를 호출 할 필요가
function time(){ 
    var number = Math.floor(Math.random()); 
    $('h1').text(number); 
} 
+4

이 함수를 호출해야합니다. 'time()'함수를 호출 했습니까? –

+0

구체적으로 "작동하지 않음"이란 무엇입니까? – clabe45

+0

JQuery가 스크립트 코드보다 먼저 참조되고 HTML이로드 된 후에 작성한 함수가 실행되었는지 확인하십시오 (함수 및 해당 호출을 document.ready 이벤트 처리기 내에 넣음). 그리고 실제로 함수를 호출해야합니다. –

답변

0

JQuery에 대해 알지 못하는 형식으로 jquery 선택기 인 $을 사용하고 있습니다. 다음 코드를 대신 사용하십시오.

function Thetime(){ 
     $(document).ready(function() { 
       var number = Math.floor(Math.random()); 
       $('h1').text(number); 
     }); 
    } 

희망 사항은 문제를 해결할 것입니다. 참고 사항 : 생성 된 숫자를 바닥재로 만들면 항상 0으로 이어질 수 있으므로 Math.floor (Math.random()) 대신 Math.random()도 사용할 수 있습니다.

덕분에

+0

코드 서식을 수정하십시오. – Soviut

+0

예, $ (document) .ready (function() {})을 추가해야했습니다. 그런 다음 효과가 있었다. –

0

.

function time(){ 
 
    var number = Math.floor(Math.random()); 
 
    $('h1').text(number); 
 
} 
 

 
// call your function to run it 
 
time();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<h1></h1>

참고 :

는 여기에 귀하의 코드를 실행 당신은 당신의 번호가 0는 항상 것을 알 수 있습니다. 이는 Math.random()01 사이의 부동 소수점을 생성하기 때문입니다 (예 : 0.22378). 마찬가지로 Math.floor()은 임의의 부동 소수점 숫자를 가져 와서 가장 가까운 정수로 반올림합니다. 따라서 0.22378과 같은 임의의 숫자는 항상 0으로 채워집니다. 임의 숫자의 범위를 무작위로 지정하려면 난수에 최대 을 곱한 다음 결과로을 얻으십시오.

var max = 30; 
var number = Math.floor(Math.random() * max); 
+0

감사합니다. 이미 알고 있었지만 어쨌든 도움을 주셔서 감사합니다. –

0

@ScottMarcus 내가해야 할 일을했을 모든 기능에 document.ready를 추가했다, 질문에 대답했다. 새로운 시작 코더에게 맡기십시오.

관련 문제