编辑:我真正需要知道的是,当用户通过后退按钮到达页面时,是否有任何javascript事件可靠地触发.我尝试了onload
该body
元素的事件,但它不会在Firefox或Safari上触发.
我正在使用一些旧代码,这些代码试图通过在用户单击一个按钮时禁用所有表单提交按钮(通过监听表单的onSubmit事件)来阻止表单数据的双重提交.此代码适用于应用程序中的每个表单,无论双提交是否甚至是一个问题.
问题是,如果用户点击Firefox或Safari中的后退按钮,当他到达页面时,所有提交按钮仍然被禁用.在Firefox上,刷新后它们甚至被禁用(只有Ctrl + F5刷新才能执行)!
我试过听过body
这个onLoad
事件,但当你通过后退按钮到达页面时,FF和Safari不会触发.(有趣的是,即使按钮保持禁用状态,它也会在FF上的软刷新时触发.)
这是一个非常简单的HTML文档,它将显示我的意思:
注意:我已经使用IE8,FF3.5,Safari 4,Opera 9和Chrome 2.0在WinXP上进行了测试.只有Safari和FF在您使用返回时禁用该按钮.