2016-11-04 4 views
0

나는 방금 내 작은 크리커 게임을 만들기 시작했고 막 다른 골목에 갇혀있다. 나는 클릭 수를 가지고 있으며 그 수가 증가하는 수를 변경하는 버튼을 만들고 싶습니다. html로의 바닥을 향해 함수 내부에서 값을 변경하려면 어떻게해야합니까?

<!DOCTYPE html> 
<html> 
    <head> 
     <title> Rust Clicker </title> 

     <link rel="stylesheet" href="css.css"> 

     <link rel="icon" src="icon.ico"> 
    </head> 

    <body> 
     <div onClick="onClick()"> 

      <img src="rust.jpg" id="click" value="Click" /> 

     </div> 

     <script src="picture.js"></script> 

     <script src="clicks.js"></script> 

      <p>Clicks: <a id="clicks">0</a></p> 

      <button onClick="">Click me to click twice!</button> 

    </body> 
</html> 

은 내가 클릭 수를 내 clicks.js 파일에 의해 상승하는 값을 변경하고자하는 버튼이 있습니다. 나는이 증가 내 HTML에 버튼을 만들고 싶어

var clicks = 0; 
function onClick() { 
    clicks += 1; 
    document.getElementById("clicks").innerHTML = clicks; 
}; 

"클릭 + = 1;"아래 clicks.js입니다 "클릭 수 = 2"로 표시되지만 방법은 모르겠습니다.

+0

'onClick()'의 내부에는 외부와 다른 범위에 있습니다. 'clicks'는'onClick()'의 범위 내에서'undefined'입니다. 해결책 :'window' 객체에 (예를 들어) 추가하여'clicks' 전역을 전역으로 만듭니다. – Koen

+1

@Koen'클릭 수'는 이미 전역입니다. 함수 외부에서 정의됩니다. 그리고 이것은 OP와는 무관 한 질문입니다. – Turnip

+0

'내 HTML의 버튼을 "클릭 수 = 1"로 늘리고 싶습니다. "clicks + = 2"''내가 올바르게 이것을 이해한다면 클릭 변수 var에 2를 더하고 싶다면 전역 변수'clicksIncrement = 1'을 설정하고'clicks + = 1;'을' + = clickIncrement' 그리고 당신은'clickincrement' var을 증가시킬 필요가 있습니다. –

답변

3

Click 이벤트에서 기능 자체를 변경 하시겠습니까?

그렇다면 그렇게 할 수있는 것이 확실치 않습니다. 나는 아직도 너처럼 시작하고 있기 때문에 잘못 될 수있다.

var clicks = 0; 

function onClick(x) { 
    clicks += x; 
    document.getElementById("clicks").innerHTML = clicks; 
}; 

이 그런 다음 버튼 당신이 할 수 있습니다 : :)

클릭에 의한 변경을 클릭 요소에 고유 한 경우

, 당신은 아마도 다음 할 수있는

<button onClick="onClick(2)">Click me to click twice!</button> 

... 및 기타 위치 : 예 :

<div onClick="onClick(1)"> 

    <img src="rust.jpg" id="click" value="Click" /> 

</div> 

한 번의 클릭으로.

희망이 어떤 식 으로든 도움이됩니다. :)

관련 문제