Definition and Usage
The defer attribute is a boolean attribute.
When present, it specifies that the script is executed when the page has finished parsing.
Note: The defer attribute is only for external scripts (should only be used if the src attribute is present).
Note: There are several ways an external script can be executed:
- If async is present: The script is executed asynchronously with the rest of the page (the script will be executed while the page continues the parsing)
- If async is not present and defer is present: The script is executed when the page has finished parsing
- If neither async or defer is present: The script is fetched and executed immediately, before the browser continues parsing the page
Applies to
The defer attribute can be used on the following element:
Element | Attribute |
---|---|
<script> | defer |
Example
Example
A script that will not run until after the page has loaded:
<script src="demo_defer.js"
defer></script>
Try it Yourself »
Browser Support
The numbers in the table specify the first browser version that fully supports the attribute.
Attribute | |||||
---|---|---|---|---|---|
defer | Yes | 10.0 | 3.6 | Yes | 15.0 |