2016-09-28 4 views
0

작은 음악 사이트를 구축하고, 그리고 mediaelement.js을 사용하고 영향을 미치는 URL 구조를 방지하기 위해, 다음 코드는어떻게 JQuery와/자바 스크립트 기능

$(function(){ 
     $('#audio-player').mediaelementplayer({ 
     alwaysShowControls: true, 
     features: ['playpause','progress','volume'], 
     audioVolume: 'horizontal', 
     iPadUseNativeControls: true, 
     iPhoneUseNativeControls: true, 
     AndroidUseNativeControls: true 
     }); 
    }); 
ID = "오디오 플레이어"를 기본 오디오 플레이어를 대체

문제 내가 지정하는 URL을 사용하여 하나의 폴더처럼 mysite.com/folder1 잘 작동하지만 mysite.com/folder1/folder2처럼 더 하위 폴더 URL을 사용할 때 나는 JS 형식 오류

TypeError: $(...).mediaelementplayer is not a function 
<anonymous> 
noe:176 
x.Callbacks/c() 
jquery-1.10.2.min.js:4 
x.Callbacks/p.fireWith() 
jquery-1.10.2.min.js:4 
.ready() 
jquery-1.10.2.min.js:4 
q() 

면책 조항 : 확실하지 않은 질문이 맞지만 오류를 제대로 이해하면 제목을 편집하는 데 도움이됩니다. 미리 감사드립니다

+4

이 코드는 표시된 코드와는 아무런 관련이 없지만 mediaelement.js의 경로는 잘못되었습니다. 폴더 구조에서 더 깊은 페이지의 경로를 수정하거나 선행 슬래시를 사용하여 도메인 루트에서 간단히 참조해야합니다. – CBroe

+0

감사합니다. 자원 파일을 참조하는 폴더가있는 laravel을 사용하고 있습니다. 또한 url이 모든 리소스 파일에 링크되는 파일 (app.blade.php)이 있습니다.이 파일은 다른 모든 페이지에서 확장 (호출)됩니다. 그래서 나는 URL 참조에 문제가 있다고 생각하지 않는다. –

+0

브라우저의 개발 도구를 사용하여 스크립트를 올바르게로드 할 수 있는지 여부를 확인하십시오. // 또 다른 가능한 이유는'$ ('# audio-player')는 단순히 그 페이지에서 요소를 찾지 못한다는 것입니다. 그러한 오류도 발생할 수 있습니다. – CBroe

답변

0

일부 연구를하고 브라우저 개발자 도구를 사용하여 조사한 결과 CBroe의 댓글이 있습니다. 나는 파일을 전혀 로딩하지 않는 것을 보았다. 또한 찾았습니다 JS TypeError는 정의되지 않은 객체를 한 방향으로 참조하려고 할 때 발생합니다. 다른 하나는입니다. 파일이 전혀로드되지 않은 것을 알게 된 후 문제를 해결 한 Laravel stylesheets and javascript don't load for non-base routes이 질문에 나를 착륙시킨 더 나은 검색 쿼리를 작성할 수있었습니다. 희망이 사람을 도움이됩니다.