The simple answer would be as follow
In window.onload, "onload" is a method that invokes the function as soon as the whole page is ready to process the code. the function will only invoked after the whole page including other js/css/media files has been loaded properly then window.onload function fires and executes the code written in the method.
In $(document).ready() "ready" is a jQuery method that is used to invoke a function as soon as the DOM(document object model) is ready irrespective of whether images, CSS, or other asset files are loaded or not.