2010-11-23 31 views
0
  1. 我有一個表單。最初,輸入元素具有「未填充」類。當填寫表格時,我會動態地刪除這個類。恢復Firefox中後退按鈕上的對象類別

  2. 表單已提交,並且有重定向到另一頁。

  3. 我點擊「返回」按鈕並返回到原始形式,但元素缺少「未填充」類。

這在IE8中不是問題。 我嘗試添加該jQuery的電話,但是當通過後退按鈕到達頁面它不被執行:

$('#my_input').hasClass('unfilled') 

謝謝!

編輯:張貼錯誤的代碼行上面,對不起。應該是:

$(document).ready(function() { 
    $('#my_input').addClass('unfilled') 

回答

1

火狐保持一種叫做bfcache(read more here),基本上緩存頁面的整個狀態在內存中,當你回到恢復它。 onload腳本不會再次執行,並且元素保持與之前相同的狀態。您可以通過向您的頁面添加虛擬onunload處理程序來禁用此行爲。

0

火狐保持狀態時,你回去吧,這是對DHTML重型網頁非常方便(如果你產生例如一個對話框,該對話框仍然會在那裏,當你回去)。你只需要在代碼中對此進行解釋;例如,你可以嘗試添加一個onready處理程序,爲所有輸入元素添加一個「未填充」類,例如。

$(function() { 
    $("INPUT").addClass("unfilled"); 
});