2012-03-04 7 views
1

그냥 정렬했다고 생각하면 ... 작은 토글 질문입니다.이 코드는 클릭 할 때 재생에서 중지로 전환하기위한 것이지만 그렇지 않습니다. 나는 변수에 어떤 문제도 볼 수 없다 - 그렇지만 나는 정말로 js를 잘 모른다. 왜 이것이 작동하지 않는지 알 수 있습니까? 코드는 다음과 같습니다. var selSound = 8000; // 첫 번째 사운드를 기본값으로 사용합니다. var play = false; // 기본적으로 일시 중지되었습니다.자바 스크립트 및 버튼 전환

function selectSound(id) { 
    selSound = id; 
} 

function togglePlay() { 
    var a = document.getElementById(selSound); 
    var b = document.getElementById("playbtn"); 
    play = !play; 
    if (play) { 
     b.value = "Stop Playing"; 
     a.play(); 
    } 
    else { 
     b.value = "Start Playing"; 
     a.pause(); 
    } 
} 

HTML :

<div style="text-align:center"><button id="playbtn" data-role="button"  onclick="togglePlay()" >Start Playing</button></div> 

이 아이폰 OS/HTML5 프로젝트의 일환이며, 사파리와 iOS 시뮬레이터에서 테스트됩니다. 감사 J

답변

1

당신이 누락 된 따옴표 :

var a = document.getElementById(selSound); 

가되어야한다

var a = document.getElementById('selSound'); 
+0

안녕 - 감사 응답 - 여전히 :( – Jimbly2

1

가 왜 input type="button"를 사용하지 않는?

var play = false; 
function togglePlay() { 

    var b = document.getElementById("playbtn"); 
    play = !play; 
    if (play) { 
     b.value = "Stop Playing"; 
    } 
    else { 
     b.value = "Start Playing"; 

    } 
} 

및 HTML :

<input type="button" id="playbtn" data-role="button" value="Start playing" onclick="togglePlay()" /> 

Demo

편집

버튼을 사용하면 innerText

var play = false; 
function togglePlay() { 

    var b = document.getElementById("playbtn"); 
    play = !play; 
    if (play) { 
     b.innerText = "Stop Playing"; 
    } 
    else { 
     b.innerText = "Start Playing"; 

    } 
} 
을 사용해야합니다

Demo

+0

아,하지만 작동하지 - 감사합니다 - 위대한 아니라 HTML5에서 작동 -이 JQMobile와 함께 일할 수있는 방법은 무엇입니까? J – Jimbly2

+0

안녕하세요. 다시 감사하지만 여전히 토글을 거부합니다. – Jimbly2