触发事件时会发生什么

时间:2016-04-29 23:03:41

标签: javascript dom

也许这个问题并非如此问题/已解决'版本,但我仍然很好奇: 在javascript中,当我们做出假设事件时

    _addEvent(window,"resize",
            function (){
                location.reload(); // needed to reload page when it is resized
                //somefunctions
            }
        );

并使用in [在某些功能部分]进行一些样式配置,当页面调整大小时,新的[resized]页面是否以某种方式继承了以前修改过的javascript和css,然后再次调整大小后进入事件?

只是对页面调整大小时DOM对象进入的阶段感到好奇,然后重新调整大小。

真实世界示例:在计算机上调整浏览器窗口大小以适应屏幕的一半,然后再次将其调整为全屏。

1 个答案:

答案 0 :(得分:0)

调整页面大小时,浏览器不会更改页面内容。窗口大小已更改,浏览器将在现有内容上再次运行布局,以确定在新大小的窗口中应显示的内容,然后将触发resize事件。

如果resize处理程序对DOM进行了更改,那么浏览器将再次决定是否需要重做新布局,但这不会触发另一个resize事件。

如果您在调整大小处理程序中执行*(顺便说一下,这听起来像可怕的想法),那么您正在加载一个全新的页面,新加载的页面将会只需加载到当前窗口大小。除非用户再次更改窗口大小,否则新加载的页面不会有另一个resize事件。

B不会继承上一页中除cookies和localStorage之外的任何内容。内容从头开始重新加载(其中一些可能来自缓存),浏览器从头开始解析并重新开始新页面。这就像在浏览器中按F5重新加载页面一样。

相关问题