2009-09-29 5 views

답변

6

예, 비동기입니다. 동적 인 <script> 주입은 브라우저가 브라우저 잠금을 피하기 위해 비동기 적으로 발생해야하는 DOM을 통해 외부 리소스를로드하는 결과를 가져옵니다 (예 : 스타일 시트, 이미지, 플래시).

언제든지 JSONP ("패딩과 JSON")을보고 있습니까? 동적 스크립트 태그 삽입을 사용합니다. "AJAX"에 대한 토론이 점점 더 많아지고 동기식 JSONP (동기식 XmlHttpRequest과 같은)가 불가능하다는 사실은 종종 간과됩니다.

+0

아니요 JSONP를 사용하지 않습니다. 동 기적으로 할 수있는 방법이 있습니다.로드되지 않은 경우 함수를 호출 할 수 없습니다. – Rakesh

+0

@Rakesh : 내 답변에 따르면 동기식 '

0

동적 스크립트 태그 추가가 비동기입니까?

예. 스크립트 태그가 동적으로 삽입되지 않을 때 주로 발생하는 비동기로 간주됩니다.

DOM에 완전히 구성된 스크립트 태그는 차단 동작을 발생시킵니다. 즉, 특정 애셋의로드가 완료 될 때까지 다른 HTML을 계속로드 할 수 없습니다. 따라서 많은 개발자는 </body> 태그 바로 앞에 스크립트 태그를 넣는 것을 선호합니다. 그런 식으로 태그는 synchronous이라고합니다.

반면에 스크립트 태그를 동적으로 삽입하면 차단 동작이 발생하지 않는 경향이 있습니다. 제 말은 입니다. 왜냐하면 다른 의견에서 보았 듯이 모든 브라우저에서 그렇게하는 것은 아니기 때문입니다. 가장 좋은 방법은 동적 스크립트 코드를 document ready 콜백으로 묶는 것입니다. 따라서 기술적으로는 asynchronous이기 때문에 다른 자산도 해당 자산 및 해당 기능과 함께 계속 작동 할 수 있습니다.