最近做项目发现firefox 刷新的bug
By:Roy.LiuLast updated:2011-07-18
最近做一个项目,客户要求兼容firefox,ie8. 我用AJAX 方式做,页面ONLOAD时用AJAX 请求数据,填充到页面上,第一次数据肯定正确,这是点刷新,结果错误就来了,数据就乱来了,不知道FIREFOX 怎么弄出来的,在IE下测试,结果无论怎么刷新,数据都是正确的。只能说明是FIREFOX的问题了。
测试结果,如果直接在FIREFOX中点击刷新图标,肯定出错,如果按 ctrl+F5 刷新,是正确的。
在网上搜索了下 firefox refresh bug ,结果发现有这个现象的还不少。
http://fluppe.wordpress.com/2006/01/03/firefox-refresh-reload-bug/
http://forums.mozillazine.org/viewtopic.php?f=25&t=1787115
http://stackoverflow.com/questions/5319678/javascript-and-defaultvalue-of-hidden-input-elements
最后发现,其实是 FIREFOX 缓存INPUT 元素的结果,FIREFOX 虽然缓存了数据,但在我看来,有些缓存是不对的,特别是数据量大时,简直是乱缓存。
最后找到解决办法:
在 input 元素上加上 autocomplete="off" 就好了,不让firefox 去缓存。
当然也可以加在FORM 上。
测试结果,如果直接在FIREFOX中点击刷新图标,肯定出错,如果按 ctrl+F5 刷新,是正确的。
在网上搜索了下 firefox refresh bug ,结果发现有这个现象的还不少。
http://fluppe.wordpress.com/2006/01/03/firefox-refresh-reload-bug/
http://forums.mozillazine.org/viewtopic.php?f=25&t=1787115
http://stackoverflow.com/questions/5319678/javascript-and-defaultvalue-of-hidden-input-elements
最后发现,其实是 FIREFOX 缓存INPUT 元素的结果,FIREFOX 虽然缓存了数据,但在我看来,有些缓存是不对的,特别是数据量大时,简直是乱缓存。
最后找到解决办法:
在 input 元素上加上 autocomplete="off" 就好了,不让firefox 去缓存。
当然也可以加在FORM 上。
From:一号门
Previous:政府用心良苦
Next:出轨
COMMENTS