Pak Jiddat

Read: In the name of thy Lord Who createth, Createth man from a clot. Read: And thy Lord is the Most Bounteous, Who teacheth by the pen, Teacheth man that which he knew not. Nay, but verily man is rebellious That he thinketh himself independent!. Lo! unto thy Lord is the return. (Sura Alalaq 96:8)

Using Prefetch, Preload and Preconnect for speeding page load times

Created On: 19 Feb, 2018: 15:58:35 - Tags : html5 | css3 | javascript


Prefetch, Preload and Preconnect are mechanisms supported by modern web browsers that allow efficient loading of web resources.

Preload allows controlling how resources such as images, CSS and JavaScript files are loaded on the current page. For each resource that we want to preload, we have to use a link tag with rel="preload" attribute. The following examples show how to preload resources:

<!-- allows preloading an image -->
<link rel="preload" href="image.png">
<!-- allows preloading a font file -->
<link rel="preload" href="" as="font" crossorigin>
<!-- allows preloading css -->
<link rel="preload" href="" as="style">

The main benefit of the preload directive is that it allows important resources to be loaded earlier. For example if there is a stylesheet or image that is required for a page to display properly, then it can be preloaded by adding the relevant link tags in the head section of the document

Prefetch is similar to preload but allows efficient loading of resources that are likely to be accessed by the user, such as a next or previous link. A drawback of prefetch is that it can cause certain page metrics such as ad statistics, visitor count etc to be miscalculated. For example Google Chrome has been known to miscalculate web analytics stats. There are three types of prefetch directives:

  1. link-prefetch. It allows a link to be fetched in advance before it has been clicked by the user. The contents of the link are saved to the browser cache
  2. dns-prefetch. It allows the host name of the resource to be resolved in advance. It eliminates the dns resolution step when the resource is requested by the user
  3. pre-render. It allows a resource to be fetched and processed before being requested by the user. For example a link marked with the directive rel="prerender" will be fetched and processed by the browser. It should be used with caution as it can consume resources on mobile devices

preconnect. The preconnect directive allows establishing tcp connections for a resource before it is actually requested. For example tls negotiations, tcp handshake and dns resolutions.

Related Articles

  1. Using await and async with Promises
  2. ES6 brings new features to JavaScript
  3. Using Web Components in JavaScript
  4. Using JavaScript promises
  5. JavaScript arrow functions and the let keyword
  6. Using classes and objects in JavaScript
  7. Using Generators in JavaScript
  8. Difference between ECMAScript, TypeScript and JavaScript
  9. Adding event listeners using JavaScript
  10. Get current unix timestamp using Javascript
  11. Fetching parent node element of a HTML node
  12. Adding option to html selectbox using Javascript
  13. Fetching html elements using CSS class names
  14. Fetching html elements using CSS selectors with Javascript
  15. Changing CSS styles using Javascript
  16. Allowing Cross Origin Requests using htaccess
  17. NodeJs permission denied error
  18. Customizing Redmine layout
  19. Passing parameters to Jquery event handler function
  20. W3C.Data
  21. Making cross domain Ajax calls using JSONP
  22. Use of Preflight request in HTTP Cross Origin Resourse Sharing (CORS)
  23. Javascript JSON guide
  24. Using cookies in Javascript
  25. Convert javascript object to json string
  26. Javascript date object
  27. Get the time using JavaScript
  28. Base64 Encoding of utf-8 encoded string using Javascript
  29. Setting CSS styles using JQuery
  30. Replacing html element using replaceWith jquery function
  31. Using keydown event handler for detecting enter key press
  32. Replacing a string using Javascript replace function
  33. Using clearTimeout and onmouseenter, onemouseleave events
  34. Get co-ordinates of element relative to document using Jquery
  35. Iterate throught Javascript object properties
  36. Select contents on text field
  37. Adding drag and drop to list items
  38. W3C.CSS
  39. Html5 Validator error for article and section tags
  40. Making webpages work offline
  41. HTML5 basics
  42. Using ems instead of Pixels for Typography
  43. Responsive web design with html5 and css3
  44. CSS :hover Selector
  45. CSS Border Images
  46. Setting CSS style priority
  47. CSS 3 Tips and Tricks
  48. CSS 3 Basics
  49. What are CSS Grid Systems
  50. What is the difference between viewports and device width
  51. Using Fluid Images
  52. What are CSS Media Queries
  53. What is meant by Fluid layout
  54. What is the main benefit of CSS
  55. What is responsive design
  56. An important rule of Responsive Design - Placing content first
  57. Explains how to use CSS rules specific to Firefox
  58. Free font for Urdu language