f12修改代码刷新后还是会变回原来的代码,再次执行的还是原来的代码。
对于已经执行过的且已知在页面中不会再次执行的的代码,直接在debugger里修改是没有用的,即使保存了,但是只要一刷新页面,JS的代码内容是会重新从cache获取或者重新向服务器请求然后执行的,但是这不代表就是不能修改。
比如对于那些通过事件触发的代码,当修改并保存以后,是会生效的,前提是第一没有刷新页面,第二可以在不刷新页面的前提下执行这段修改过的代码(比如绑定事件)。
因为网速问题,浏览器不能每次打开一个页面都从新获取页面中的js,css,图片之类的资源。因为大部分页面被修改的频率不大。这样就可以在网络条件比较差的情况下流畅打开之前的页面。
如果需要浏览器不做缓存,可以在header里写一些信息(没测试过,直接粘的网上的代码)
<meta http-equiv="Expires" content="0"><meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-control" content="no-cache">
<meta http-equiv="Cache" content="no-cache">
动态加载js文件,在js资源url后加随机数
<script>document.write("<script type='text/javascript' src='/js/test.js?"+Math.random()+"'></script>")
</script>