document.ready vs [removed]

前端 未结 1 628
不知归路
不知归路 2021-02-11 01:26

I am wondering which one is the right one to run the js code which calculates the height of vertical menu depending on the window height and sets it on time, not late, not early

1条回答
  •  时光说笑
    2021-02-11 02:11

    ready

    When you run code when the document is ready, it means the DOM is loaded - but not things like images. If images will affect the height and width and the image tag has no width and height set, ready isn't the choice for you - otherwise it probably is.

    onload

    This includes images - so everything will be loaded. This means it fires a bit later.

    both

    var calculateSize = function () {
         var winh = document.body.clientHeight;
         var footer = document.getElementById('footer').offsetHeight;
         document.getElementById('sidebar').style.height = winh - 5/2*footer + 'px';
         document.getElementById('sidebar').style.marginBottom = footer + 'px';
    }
    
    $(document).ready(function(){
        calculateSize();
    
         $(window).resize(calculateSize);
    });
    
    window.onload = calculateSize ;
    

    0 讨论(0)
提交回复
热议问题