0
if (typeof $ == "undefined"){
console.log("$ is undefined. Adding javascript element to the document");
jQs = document.createElement("script");
jQs.type = 'text/javascript';
jQs.src = 'http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(jQs, s);
// Run script once jQuery is loaded
console.log(" startScript() Start");
jQs.onload = startScript;
}
위의 스크립트는 $가 정의되지 않은 경우 jquery를 가리키는 스크립트 태그를 추가합니다. 문서가 시작되기 전에 태그를 삽입하고 startScript 함수를 실행하려고합니다. 하지만 내가 생각하는 것은 body.onload가 startScript를 충분히 빠르게 트리거하지 않는다는 것입니다. jquery 스크립트 태그/문서가 준비되는 즉시 startScript를 트리거하는 이벤트가 있습니까?
자바 스크립트 onload 이벤트 및 문서 준비가되기 전에 다른 이벤트
나는 .. 대답은 JQuery와 태그가 준비하고 문서가 나는 효과를 달성하는 방법을 잘 모릅니다 together..but 준비가 될 때마다 startscript을 실행에있다
주를 생각 ($의 코드를 넣어 문서). jquery 파일이 스크립트에 포함되어 있지 않은 경우 $가 정의되지 않았기 때문에 .ready()는 관련없는 솔루션입니다.
참고 jquery 태그 onload 이벤트에서 onload 함수를 실행하고 싶지 않습니다. 기능이 여러 번 트리거되고 있음을 나타낼 수도 있습니다.
당신이 고쳤다 고 생각합니다 ... LOL .. 3 시간 동안 붙어 있어요 .. 드디어 해결했습니다 –
@ FrançoisWahl'typeof'는 항상 문자열을 반환합니다. 문자열 유형을 강제로 적용해도 아무런 효과가 없습니다. 'typeof null'은'=='또는'==='를 사용하든''object "'입니다. '$'을'undefined'에 대해 테스트하는 목적은'jQuery'가 이미로드되었는지 아닌지를 보는 것입니다. 마지막 노트가 틀리면,'null == undefined'가 true이고'null === undefined'가 false입니다. –
@RobW : +1 당신 말이 맞습니다. 내 실수. 난 그냥 jsFiddled 그리고 나는 그것을 주위에 잘못된 길을했다. 나는 내 의견을 다시 언급 할 것이다 :) – Nope