2010-04-20 9 views
0

그래서 한 스크립트 (wpaudio.js - wp-audio 플러그인)에서 jquery soundmanager 변수에 액세스하려고합니다. 다른 (init.js - 내 자신의 javascript) 안에 있습니다. 페이지에서 상위 일시 중지/재생 버튼을 추가로 만들고 DOM에 클래스 이름의 일부로 포함 된 현재 soundID를 다시 시작해야합니다. wpa0가의 SID 것SoundManager/Jquery : SoundID sID 가져 오기

<img src="http://24.232.185.173/wordpress/wp-content/plugins/wpaudio-mp3-player/wpa_play.png" class="wpa_play" id="wpa0_play"> 

:

function wpaButtonCheck() { 
if (!this.playState || this.paused) 
    jQuery('#' + this.sID + '_play').attr('src', wpa_url + '/wpa_play.png'); 
else 
    jQuery('#' + this.sID + '_play').attr('src', wpa_url + '/wpa_pause.png'); 

} 여기

출력이고 : 여기

는 wpaudio.js의 클래스 이름을 생성하는 코드는 필요한 소리.

$('.mixesSidebar #currentSong .playBtn').toggle(function() { 
     soundManager.pauseAll(); 
     $(this).addClass('paused'); 
    }, function() { 
     soundManager.resumeAll(); 
     $(this).removeClass('paused'); 
    }); 

내가 "이력서 (this.sID)"resumeAll을 변경해야합니다,하지만 난 어떻게 든 온 클릭 SID를 저장하고, 상기에서 호출해야합니다 init.js로의

나의 현재 스크립트입니다 기능.

또는 현재 재생 버튼의 클래스 이름을 가져올 수있는 정규식을 생각하고 "_play"까지 문자열을 구문 분석하거나 "_play"를 없애기 위해 trim 함수를 사용한다고 생각합니다. 이 작업을 수행하는 방법을 모릅니다.

도움 주셔서 감사합니다.

답변

0

내 솔루션은 다음과 같습니다. wpaudio.js의 33, 35 및 54 줄에있는 문자열 "+ _play"을 가져 왔습니다. 이어서 각 mp3의 재생 버튼 요소에는 soundmanager id와 동일한 ID 속성이 있습니다. 그래서 난 그냥 내 자신의 .js에서 다음 변수를 만들어 : 당신이 mp3 파일을 클릭하면

$('.mixPlayCell a').click(function() { 
    var songsId = $(this).find('img').attr('id'); 
}); 

는,이 변수 songsId에 SID를 저장을 아직도하고 싶은

알고하는 방법 실제로 직접에 이러한 해결 방법없이 sID를 검색하십시오 ...

0

나는 요소와 관련된 몇 가지 추가 데이터를 저장할 수있는 .data() 메서드가 있다고 생각하므로 클래스 이름을 구문 분석 할 필요가 없으며 img에 해당 sID를 추가하면됩니다.

관련 문제