defer는 스크립트 세그먼트에 즉시 실행할 필요가 없는 코드가 포함되어 있으며 SRC 속성과 함께 사용된다는 사실을 브라우저에 알려줍니다. 또한 이러한 스크립트는 백그라운드에서 다운로드되고 콘텐츠는 포그라운드에서 다운로드될 수도 있습니다. 일반적으로 "" 구문이 사용자에게 표시됩니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, JavaScript 버전 1.8.5, Dell G3 컴퓨터.
많은 사람들이 이미 Javascript를 능숙하게 사용하고 있지만, 실제로 보면 defer가 무엇인지 알지 못할 수도 있으며, 이러한 문제에 직면하여 DOM 객체를 조작하지 않는 js를 직접 실행해야 하는 경우도 있습니다. 객체를 찾을 수 없다는 오류입니다. 모두가 알고 있듯이, 그 이유는 아직 페이지가 로드되지 않았고, js 작업 객체가 여전히 다운로드 중이기 때문입니다. 그러나 많은 사람들은 defer 태그를 추가하면 이 문제를 쉽게 해결할 수 있다는 사실을 모릅니다.
<script src="../CGI-bin/delscript.js" defer></script>
에서 defer의 기능은 문서가 로드된 후에 스크립트를 실행하여 개체를 찾지 못하는 문제를 방지하는 것입니다---약간의 문제
<button id="myButton" onclick="alert('ok')">test</button> <script> myButton.click(); </script> <script> myButton.click(); </script> <button id="myButton" onclick="alert('ok')">test</button> <script defer> function document.body.onload() { alert(document.body.offsetHeight); } </script>
에 defer를 추가하면 문서가 로드된 후에 실행된다는 의미입니다. 페이지가 완전히 로드되었습니다. 이는 window.onload와 동일하지만 애플리케이션의 window.onload보다 더 유연합니다!
defer는 스크립팅 프로그램의 힘을 지닌 "숨겨진 영웅"입니다. 이는 스크립트 세그먼트에 즉시 실행될 필요가 없는 코드가 포함되어 있음을 브라우저에 알리고, SRC 속성과 함께 사용하면 이러한 스크립트가 백그라운드에서 다운로드되어 전경의 콘텐츠가 표시될 수도 있습니다. 정상적으로 사용자에게
--그러나 문서가 로드된 후 스크립트를 실행하기 전에 다음 두 가지 사항에 주의하십시오.
1. document.write가 직접 생성하므로 지연 유형 스크립트 세그먼트에서 document.write 명령을 호출하지 마십시오. 출력 효과.
2. 또한 즉시 실행 스크립트에서 사용하는 전역 변수나 함수를 연기 스크립트 세그먼트에 포함하지 마세요.
성능을 최적화하는 일반적인 방법은 스크립트를 즉시 실행할 필요가 없을 때