2016-07-22 2 views
0

문제없이 작동하는 내 페이지로 이동할 때 audios 태그의 스타일을 변경하는 스크립트 audiojs가 있지만 div를 다시로드하기위한 버튼을 클릭하면 div는 오디오 태그를 포함하고 있습니다.) jQuery의 load jQuery 스타일을 제거하고, jQuery getScript으로 div를로드 한 후 스크립트를 가져 오려고했지만 스크립트가 여러 번로드되어 브라우저가 멈추었습니다. ajax로 div를로드 한 후 스크립트가 실행되지 않는다

는하여 audiojs

audiojs.events.ready(function() { 
    audiojs.createAll(); 
}); 

내가 한 번 더 이상이 함수를 호출 할 수있는 솔루션을 원하지 않는 전화 기능, 감사

+0

, 당신은 변경 사항을 잃고, 그래서 중 하나를 다시로드하거나 – dandavis

답변

0

모두에게 감사를 전 클래스 audiojs을 제거하려면이 코드를 추가 내가 해결책을 발견

,

아약스와 사업부를로드 한 후,

당신이 사업부를 "다시"경우

$("audio").removeClass("audiojs");

0

다시 할 수있는 스크립트에 새 스크립트 태그를 추가하는 시도이다 아래와 같은 코드 뭔가에 -로드 :

<script language="text/javascript"> 
 
    function audiojs() 
 
    { 
 
     var div= document.getElementsByTagName('head')[0]; 
 
     var script= document.createElement('script'); 
 
     script.type= 'text/javascript'; 
 
     script.src= 'audiojs.js'; 
 
     div.appendChild(script); 
 
    } 
 
    audiojs(); 
 
</script>

몇 가지 아이디어를 얻길 바랍니다. 또한 캐싱을 확인하십시오.

+0

을한다면 내 생각을 다시 적용되지 않습니다 문제는 스크립트 태그에서 아니라고 생각합니다.이 함수는 audiojs.createAll() 함수에서 온 것입니다. 그래서 if 함수가이 함수가 실행 중인지 확인해야합니다. 이것은 당신이 https://kolber.github.io/audiojs/docs/ TAHNKS –

0

audio.js 라이브러리에 대한 링크가 없어도 알기 힘들지만 대부분의 API 또는 라이브러리는로드되었음을 알립니다. 문이 같은 것을 만들 수 있다면 나는를 사용합니다 :

(function() { 
function checkForLoaded(){ 
    if (audiojs.state !== null) { //or something similar 
     audiojs.createAll(); 
    } 
} 
})(); 
+0

을 원한다면 lib rary에 대한 문서입니다. 죄송합니다. 그러나이 라이브러리는 상태를 가져 오는 함수를 사용하지 않습니다. 이것은 라이브러리 https의 문서입니다 : //kolber.github.io/audiojs/docs/, 감사합니다. –

관련 문제