1、从简介部分的说明可以看出来。MyEclipse内置浏览器其实使用的是系统自带的IE浏览器,所以它和IE浏览器一样,在html页面被我修改过的情况下,刷新以后显示的依然是修改前的情况。所以,这个问题的解决方法在IE浏览器的缓存上。
2、JSP页面本身是动态的,所以IE浏览器每次都会重新加载字斤谯噌最新的。但是html一般来说都是静态的,所以IE会把第一次访问的html页面蒙抬铑闵缓存到自己的缓存文件夹里面。当通过刷新或者输入URL重新访问该html页面时,它会去缓存文件夹里找到这个html文件,显示出来。这个也不能怪IE浏览器,因为本身html是静态的,IE这么做也是为了提高访问速度,优化体验。只不过碰巧,我们在开发一些项目,需要每次修改立刻刷新看一下更改效果。那么IE就不可避免地给我们制造了一些小麻烦。
3、明白了原因,该怎么做就很清楚了。最简单的办法就是不要使用内置浏览器或者IE,使用专业的火狐或者谷歌浏览儡泌掩羞器就不会遇到这些问题。当然,既然知道了是IE缓存的问题,再加上有一些非要使用内置浏览器的人,那么也不妨修改一下IE缓存的设置。把IE浏览器的检查网络临时文件的所有网页的较新版本的时机改为“每次访问网页时”。效果就是每次访问某个网址时,都会加载最新的网页文件。设置如图。这样就完美解决了这个问题。
4、以上已经解决了题目中的问题,接下来的内容是再现刚才的问题,方便大家更好地明白问题的来龙去脉。感兴趣的可以看一下。首先依次是html代码内容、内置浏览器显示效果、IE浏览器显示效果和谷歌浏览器显示效果。
5、接下来我在html页面里加了一句说明文字,然后保存。接下来在内置浏览器刷新无反应,IE浏览器刷新无反应,谷歌浏览器刷新后正常显示了我的更改内容。如图所示。
6、这个时候打开IE浏览器的缓存文件夹。
7、在缓存文件夹里可以找到一个login.html文件,这个就是最开始访问的时候缓存的网页文件。
8、方便起见,把它拷贝到桌面。
9、用搜狗浏览器打开,可以看到,确实是修改之前的那个网页。也就是说,无论我怎么在内置浏览器里面刷新,或者在IE浏览器里刷新,它访问的都是这个缓存文件。
10、结论就是,由于MyEclipse内置浏览器和IE浏览器每次都从缓存文件夹里寻找html页面,导致html页面的更新内容无法反映出来。解决办法就是像第三步说的那样,把IE浏览器的检查网络临时文件的所有网页的较新版本的时机改为“每次访问网页时”。这个时候在内置浏览器和IE浏览器刷新就和谷歌浏览器一样了。当然接着修改html,内置浏览器和IE浏览器也能继续像谷歌浏览器那样工作了。