我在Firefox和表单提交方面存在跨平台问题。
在示例中,当按钮被禁用并且页面指向另一个位置时,firefox会禁用该按钮,而其他浏览器则不会。
我知道我可以使用onunload事件来删除disable属性。但我想知道是否还有另一种方式。我也试过设置自动完成功能,但唉它不起作用
重现错误:
Use firefox
Disable button
Use sudo-submit
Back button
仍应禁用测试按钮。
答案 0 :(得分:2)
当Firefox遍历历史记录时,它不会总是重新加载页面,但实际上通常会使用与您离开它的状态相同的页面的缓存副本。因此,如果按钮在离开时被禁用,那么当"返回时,它将被禁用。该页面仍然缓存在后向前缓存(bfcache
)中。
有两种方法可以解决这个问题:
pageshow
或pagehide
个事件。例如。您可以在pageshow
。unload
事件的处理。这将完全禁用bfcache
,从而降低性能,但更容易做到。有关详细信息,请参阅相当陈旧但仍适用的"Using Firefox 1.5 caching"文章。