HTML defer Attribute
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 | 

