2013-03-02 4 views
4

012 초보자 용 테마를 만들려면 Foundation 4Bones과 병합 중입니다. 재단 3에서 JS로 잘 작동하지만, 이제는 Foundation 4 JS를 구현하려고합니다. 몇 가지 문제가 있습니다.WP에서 WP 4에서 작동하는 데 문제가 있습니다

나는 Foundation 4 JS Documentation에있는 단계를 따라 갔지만 여전히 운이 없었습니다. 여기에 내가 닫는 body 태그 바로 앞에 배치 코드입니다 (나는 올바른 방법은 스크립트를 대기열에하는 것입니다 알고 있지만, 테스트를 위해 난 그냥 닫는 body 태그 바로 위에 붙여 넣기 한) :

<script> 
document.write('<script src=http://mcfaddengavender.net/jeremy/wp-content/themes/bones-master/library/js/vendor/' 
+ ('__proto__' in {} ? 'zepto' : 'jquery') 
+ '.js><\/script>'); 
</script> 

<script src="http://mcfaddengavender.net/jeremy/wp-content/themes/bones-master/library/js/foundation.min.js"></script> 

<script> 
$(document).foundation(); 
</script>  

this page에서 모달을 열려고 시도했지만 알 수 있듯이 링크를 클릭하면 모달이 실행되지 않습니다. Javascript 콘솔에서 약간의 오류가 있음을 알았지 만, 아직 JS에 익숙하지 않아서 제 머리를 조금 넘었습니다.

앞서 언급했듯이 기능을 초기화하기 위해 호출 할 필요가없는 Foundation 3 JS로는 문제가 없었습니다. 제대로 작동하는 것처럼 보였습니다. 이것이 큰 차이를 만들지는 모르겠지만, Foundation 3 JS와 비교하여 Foundation 4 JS에 대한 문서화와 다른 점을 발견했습니다.

누구나 나를 올바른 방향으로 인도 할 수 있습니까?

답변

1

브라우저에서 Zepto를 찾을 수없는 것 같습니다 (적어도 Chrome은 불가능). http://mcfaddengavender.net/library/js/vendor/zepto.js를하지만 404

당신이 당신의 라이브러리가 해당 디렉토리에 설정되어 있는지 확인 반환

은 여기를 찾고있다!

+0

잡아 주셔서 감사합니다! 절대 링크로 추가 했는데도 여전히 문제가 있습니다. 그러나 오류 콘솔에는 오류가 적습니다. 새 코드로 원래 게시물을 편집했습니다. – JeremyE

+0

흠. 이상 하네. 왜 이런 일이 일어나고 있는지 모르겠지만, jquery 1.8.3을 HTML에서 더로드하는 것을 보았을 것입니다. 아마 제거하고 다른 js 파일 선언 전에 document.write를 올려 놓으십시오. –

+0

jQuery에 대한 추가 호출을 제거하고 코드를 헤더로 이동하려고 시도했지만 여전히 운이 없다. (그래서 나는 이것을 알아내는 목적으로 모든 것을 바닥 글로 되돌려 놓았다.) 그래도 도움을 주셔서 감사합니다. 우리는 8-9 개의 오류에서 약 3 개의 오류로 넘어갔습니다. :) – JeremyE

0

내가 글을 읽고 난 후에, 나는 그것을 작동시켜야한다. 어쩌면 이것이 당신이나 다른 사람을 도울 것입니다.

문서가 약간 혼란스러워 보이는 것처럼 보였습니다.이 시퀀스에서 foundation/foundation.js 및 foundation-whatever-plugin.js를로드 할 때만 플러그인 기능을 사용할 수있었습니다. foundation.js를로드해도 작동하지 않았습니다. 나를 위해.

로드하는 데 requirejs를 사용하므로 경로에 대해 걱정할 필요가 없지만 경로 문제가 발생하지 않도록이로드 순서가 작동해야합니다. 문제 해결을 목적으로 나는 modernizr/zepto 감지기를 우회하고 그냥 jquery를 곧바로로드합니다.

requirejs.config({ 

baseUrl: "/path/to/scripts", 
paths:{ 
    jquery: 'vendor/jquery/jquery.min', 
}, 
shim: { 

    'foundation/foundation': { deps: ['jquery'] }, 
    'foundation/foundation.alerts': { deps: ['jquery'] }, 
    'foundation/foundation.clearing': { deps: ['jquery'] }, 
    'foundation/foundation.cookie': { deps: ['jquery'] }, 
    'foundation/foundation.dropdown': { deps: ['jquery'] }, 
    'foundation/foundation.forms': { deps: ['jquery'] }, 
    'foundation/foundation.joyride': { deps: ['jquery'] }, 
    'foundation/foundation.magellan': { deps: ['jquery'] }, 
    'foundation/foundation.orbit': { deps: ['jquery'] }, 
    'foundation/foundation.placeholder': { deps: ['jquery'] }, 
    'foundation/foundation.reveal': { deps: ['jquery'] }, 
    'foundation/foundation.section': { deps: ['jquery'] }, 
    'foundation/foundation.tooltips': { deps: ['jquery'] }, 
    'foundation/foundation.topbar': { deps: ['jquery'] }, 
    'vendor/jquery.maskedinput/jquery.maskedinput.min': { deps: ['jquery']}, 
    'vendor/chosen/chosen/chosen.jquery': { deps: ['jquery']}, 
    'vendor/tablesorter/js/jquery.tablesorter.min': { deps: ['jquery']}, 
    'vendor/tablesorter/addons/pager/jquery.tablesorter.pager.min': { 
     deps: [ 
     'jquery', 
     'vendor/tablesorter/js/jquery.tablesorter.min' 
     ] 
    }, 
    'vendor/redactor-js/redactor/redactor.min': { deps: ['jquery']}, 
    'lib/jquery.passwordstrength': { deps: ['jquery']} 

}

});

require(["jquery", 
"foundation/foundation", 
"foundation/foundation.alerts", 
"foundation/foundation.clearing", 
"foundation/foundation.cookie", 
"foundation/foundation.dropdown", 
"foundation/foundation.forms", 
"foundation/foundation.joyride", 
"foundation/foundation.magellan", 
"foundation/foundation.orbit", 
"foundation/foundation.placeholder", 
"foundation/foundation.reveal", 
"foundation/foundation.section", 
"foundation/foundation.tooltips", 
"foundation/foundation.topbar" 
], function ($) { 
    $(document).foundation(); 
}); 
관련 문제