2013-08-19 2 views
2

mediaelement.js audioplayer 플러그인을 사용하는 간단한 페이지가 있습니다. 플레이어가 정상적으로 장착되면 올바르게 연결되고 작동합니다. 그러나 페이지가 ajax를 통해로드되면 미디어 요소 플레이어가 오디오 태그에 연결되지 않습니다. 살고, 성공과 이동,ajax를 통해로드 할 때 mediaelement.js가로드되지 않습니다.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" lang="es" xml:lang="es"> 
<head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script> 

<!-- Audio Player CSS & Scripts --> 

    <script src="http://www.ingles23.com/audioplayer/js/mediaelement-and-player.min.js"></script> 
    <link rel="stylesheet" href="http://www.ingles23.com/audioplayer/css/style4.css" media="screen"> 

    <!-- end Audio Player CSS & Scripts --> 

<script> 
     $(document).ready(function() { 

         $('#audio-player-vocab0').mediaelementplayer({ 
       alwaysShowControls: true, 
       features: ['playpause'], 
       audioVolume: 'horizontal', 
       audioWidth: 400, 
       audioHeight: 120 
      }); 


    }); 
    </script> 



</head> 
<body> 



<div class='display_vocab_container' > 
<div class='display_vocab_text' > 
<div class='audio-player-slim'> 
<audio controls='controls' type='audio/mp3' src='/sound/mp3/i23-crear-frases-ingles-5.mp3' id='audio-player-vocab0'></audio> 
</div> 
</div> 
</div> 


</body> 
</html> 

내가에 사용하는 등 많은 조합을 시도했다 :

<html> 
<head> 
<link href="/test-vocabulary.css" rel="stylesheet" type="text/css"> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script> 

<script> 
$(document).ready(function(){ 

    $(".ajax_vocab_link").click(function(evento){ 
    evento.preventDefault(); 
    var ajaxDivNum = $(this).attr('id').split('_')[1]; 
     var searchTerm = $(this).attr('title'); 
     $("#ajaxcontainer_"+ajaxDivNum).load("test-audioplayer-se.php", {chrisSearch: searchTerm} 
    ); 
    }); 

}) 
</script> 

</head> 
<body> 
<p><button class='ajax_vocab_link' id='ajaxlink_1' title='clothes'>Link to load ajax doc</button></p> 
<div class='ajax_vocab_container' id='ajaxcontainer_1'>This is div id ajaxcontainer_1</div> 

</body> 
</html> 

audioplayer 페이지는 다음과 같습니다
나는 아약스와 JQuery와 통해 파일을 호출하는이 코드를 사용 css/js는 문서를 연결하지만,이 모든 상황이 악화되었습니다.
ajax를 통해로드 할 때 medaielementplayer를 첨부 할 파일을 어떻게 얻을 수 있습니까?

+0

도 참조 https://stackoverflow.com/questions/34891421/wordpress-audio-player-not-loading-when-the-content-is-loaded-through-ajax-medi를 사용 – rinogo

답변

1

나를 위해 일하는 ajax success 함수에서 mediaelementplayer() 함수 호출을 넣으십시오. 따라서 .load 대신 .ajax를 사용하려면 load 함수의 두 번째 인수로 전달해야합니다. 또는 http://api.jquery.com/ajaxSuccess/

$(".ajax_vocab_link").click(function(evento) { 
    evento.preventDefault(); 
    var ajaxDivNum = $(this).attr('id').split('_')[1]; 
    var searchTerm = $(this).attr('title'); 
    $("#ajaxcontainer_"+ajaxDivNum).load("test-audioplayer-se.php", function() { 
     $('#audio-player-vocab0').mediaelementplayer({ 
      alwaysShowControls: true, 
      features: ['playpause'], 
      audioVolume: 'horizontal', 
      audioWidth: 400, 
      audioHeight: 120 
     }); 
    }); 
}); 
관련 문제