Firefox中的F5和Ctrl-F5与JavaScript事件有什么区别?

Abe*_*bel 13 javascript ajax firefox page-refresh

当你尝试这个公共页面:http://slim.nl/shop/default.aspx(更新:同时这个网站已经改变,以至于这个问题的行为不再在那里进行测试),你会注意到一个菜单栏.如果你点击F5,那个栏中的菜单就会消失.通过浏览器中的"后退"按钮访问该页面时也是如此.它只发生在Firefox上(见3-7版本).使用Ctrl- F5,菜单栏重新出现.

据我所知,加载页面时触发的所有JavaScript事件(包括任何AJAX周期)也应该F5在通过后退按钮刷新页面时触发.这里发生了什么事?

我想从程序员的角度来看就知道有什么区别之间F5Ctrl- F5,最好的不仅仅是这种情况更普遍.当然,除非它是Firefox中的错误.

在此输入图像描述

Ali*_*ing 11

Ctrl+F5清除浏览器中的缓存文件,F5只是刷新页面,但它使用缓存文件.例如,假设您加载页面对css文件进行更改并按刷新或上传F5.页面只刷新并且不获取新修订的css文件命中ctrl+F5它会清除页面的缓存并再次从服务器获取文件.然后,这将加载将显示更改的新css文件.


Vas*_*aev 7

Firefox不仅缓存已加载的文件,还缓存对页面所做的更改(用户输入甚至更改由JavaScript生成的属性).检查一下.因此,如果您的菜单取决于某些属性,您只需hard-refresh点击CTRL+即可F5.