Joomla를 사용하여 웹 사이트를 만들고 있습니다.이 웹 사이트에는 일부 트랙 미리보기를 사용할 수있는 섹션이 있습니다. 지금까지 저는 요소를 만들고 각 요소를 개별적으로 재생했습니다. 하지만 지금은 재생 위치에 따라 Div의 너비를 늘리는 함수를 만들려고합니다. PHP의 동적 생성으로 인해이 div를 확대하기 위해 동적 함수를 만들어야합니다. 여기에 있습니다. 작동하지 않습니다.
<audio preload="metadata" id="<?php echo $videoid; ?>" class="preview play" ontimeupdate='updateTrackTime(this);'>
<source src="<?php echo $video; ?>" type="audio/mp3"/>
</audio>
<div class="player play">
<div id="<?php echo $videoid; ?>play" class="chargebar"></div>
</div>
이것은 플레이어를 생성하는 PHP입니다. 그런 다음 함수 외부에 작은 함수를 생성했습니다 jQuery(document).ready(
.
function updateTrackTime(track){
var perc = Math.floor((track.currentTime/track.duration)*100).toString()+'%';
var currTime = perc;
var trackid = jQuery(event.target).attr('id');
trackid = trackid+'play';
var currDiv = jQuery(trackid);
perc = 'width : '+perc;
if (currTime == '2%'){
alert(trackid);
alert(currDiv.attr('id'));
}
}
보시다시피 나는 무슨 일이 일어나고 있는지 이해하기 위해 디버깅하려고했습니다. trackid
답변을 올바르게 (exemple : HVOHfDJSOBRM), 나는 그가 권리를 발견 확인을 요청할 때 "chargebar"사업부는 ( currDiv
) 대답은undifined
문제는에 #
인수 에을 추가하는 것을 잊었 기 때문에 jQuery
ID가있는 요소를 선택하려고 함을 나타냅니다 trackid
. 추가 정보 .
변화
var currDiv = jQuery(trackid);
...에
var currDiv = jQuery('#' + trackid);
그것은 그것을 고칠 것입니다.
또 다른 참고 사항 : var trackid = jQuery(event.target).attr('id');
while 변수 event
는 어디에도 정의되어 있지 않습니다 (적어도 여기에 표시되는 코드에는 없음). 분명히 그것은 당신을 위해 작동하지만 var trackid = track.id;
시간 업데이트가 트리거 된 트랙에서 ID 속성을 읽는으로 변경하는 것이 좋습니다 .
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다