는 내가 로컬 (/myjs/file.js
)를 개최하여 고정 된 문제를 기록했다. 그러나 그것은 마치 해킹과 같은 느낌입니다. 먼저로드 한 다음로드하는 방법은 무엇입니까? jquery.ready는 해결책이 아닙니다. html을 사용하기 전에 dom이 준비 되었기 때문에 해결책이 아닙니다. 어떻게 제대로 대기합니까?자바 스크립트 아약스 경쟁 조건
답변
jQuery.ready
이라고 말하면 jQuery를 사용하고있는 것 같습니다. 그렇다면 <script>
태그를 div
의 내용에 넣는 대신 jQuery.getScript
을 사용하십시오. 그러면 스크립트가로드 될 때 콜백이 생깁니다.
어떤 이유로 든 할 수 없다면 투표 할 수 있습니다. file.js
에서 뭔가를 사용하고자하는 코드에서 : 스크립트가로드되면 onload
속성이 함수를 지정
<script type="text/javascript" src="site.com/file.js" onload="myFunc()"></script>
<script type="text/javascript">
function myFunc() {
//use file.js object here
}
</script>
가 실행되는 :
function doSomethingWithFileJS() {
if (typeof anObjectProvidedByFileJS === "undefined") {
setTimeout(doSomethingWithFileJS, 50);
return;
}
// Here, you know file.js has been loaded
}
스크립트를 HTML 헤드로 이동하십시오.
나는 할 수 없다. 머리 속에 들어 있지 않은 div에 삽입 됨 – BruteCode
그래, 항상 머리 속에 스크립트를 넣는 것을 피해야합니다. (나는 아래 표결의 원천이 아니 었습니다.) – Grinn
@ 그린 돌로 쓰여진 것이 아니라 ... – bfavaretto
당신은 수행하여 보장 할 수 있어야한다 .
'script' 태그의'onload' 속성은 IE에서도 신뢰할 수 있습니까? 이전 IE는 코드를 통해 연결할 수있는'load' 이벤트를 발생시키지 않으므로'onload'가 그들과 함께 작동하지 않는다고 생각하는 경향이 있습니다 (그들은'onreadystatechange'를 대신합니다). –
예, 이것은 이전 버전의 IE에서 문제가 될 수 있습니다. – techfoobar
아니 가장 좋은 방법이지만 이런 식으로 뭔가를 할 수 :
function checkIfLoaded(){
if(typeof somefunctioninfilejs == 'function'){
// load other script here
}
else {
// not loaded queue up a check
setTimeout(checkIfLoaded, 300);
}
}
- 1. 자바 스크립트 경쟁 조건 질문
- 2. Capybara 아약스 경쟁 조건
- 3. 자바 스크립트 img.onerror 변경 소스 - 경쟁 조건
- 4. knockoutJS 아약스 통화 중 경쟁 조건
- 5. JavaScript 비동기 경쟁 조건
- 6. 자바 스크립트 창 크기 조정 가능 경쟁 조건
- 7. 자바 스레드 효과 및 경쟁 조건
- 8. 경쟁 상태 - 드롭 - - 녹아웃 자바 스크립트
- 9. Rspec 요청 테스트의 경쟁 조건
- 10. NSNotification 경쟁 조건
- 11. 순서가 잘못된 경쟁 조건
- 12. 상호 배제를위한 경쟁 조건
- 13. 피닉스에서 경쟁 조건 테스트
- 14. 동적 UIPickerView 경쟁 조건?
- 15. WebGL : gl.copyTexImage2D 경쟁 조건
- 16. 동시 경쟁 조건?
- 17. 큐의 경쟁 조건
- 18. 공유 변수의 경쟁 조건
- 19. 경쟁 조건 시나리오
- 20. redis 경쟁 조건 방지
- 21. Celluloid의 불쾌한 경쟁 조건
- 22. ConcurrentBitSet의 경쟁 조건
- 23. 경쟁 조건 버그 찾기
- 24. C# 경쟁 조건 고정
- 25. BlockingCollection, 경쟁 조건?
- 26. MPI를 사용한 경쟁 조건
- 27. Java에서 경쟁 조건 실행
- 28. C# 스레딩 경쟁 조건
- 29. 세마포어 경쟁 조건?
- 30. 캐싱 및 경쟁 조건
해서는 안'site.com/file.js''은 http : // site.com/file.js'를? – Charles
그대로 받아들이지 마십시오. – BruteCode
@BruteCode : 우리는 프로그래머 및 소프트웨어 엔지니어입니다. 우리는 세부 사항에 대한 모든 것 :-) –