2013-06-02 9 views
0
Greasemonkey와

에서 사용할 때 오류 "n은 정의입니다"를 반환, 전체 userscript가 오류와 함께 실패 "N은 정의되지 않습니다 "이것은"firstScript가 정의되지 않았 음 "을 의미합니다.모더 나이저/Yepnope이 yepnope이 (모더 나이저에 번들 기본적으로 제공되는) 그 <strong><a href="http://wiki.greasespot.net/Metadata_Block#.40run-at" rel="nofollow">@runs-at document-start</a></strong> userscript Greasemonkey와에 사용하는 경우

가 실제로는 라인을 참조하십시오 DOM 이후 insBeforeObj = isGeckoLTE18 ? docElement : firstScript.parentNode,

답변

0

아직 Greasemonkey와 문서 시작 부분에로드되지,이 실패합니다.

해결 방법 1 : Modernizr에 yepnope를 사용하지 마십시오. 필수 사항은 아닙니다.

해결 방법 2 : 문서 끝에서 Modernizr/yepnope를 실행하십시오. DOM을 조작하기 시작한 곳일 것입니다. 그렇죠?

document.addEventListener('DOMContentLoaded', _runAtDocumentEnd, false); 

function _runAtDocumentEnd() { 

/* insert Modernizr/Yepnope library here */ 

} 

해결 방법 3 : 문서 끝 부분에서 실행하십시오. 그러나 문서 시작시 명시 적으로 실행하고 싶기 때문에 이는 아마도 적절한 해결 방법이 아닙니다.