2016-05-10 85 views
0

在Firefox中,如果表單提交因網站故障等原因而失敗,我們仍然可以重新提交相同的表單並且工作正常。在Chrome瀏覽器發生故障後重新提交表單,就像在Firefox中一樣

從此official site discussion我知道Chrome在按下「後退」按鈕或失敗時不會保留表單緩存。

如何使用擴展添加此功能?

+0

你想寫一個擴展名嗎?如果是,哪一部分存在問題? – Xan

+0

好的,既然你不想自己寫一個,這是[關於SO的話題](http://stackoverflow.com/help/on-topic)。 – Xan

+0

@Xan對不起。我打算最初自己寫,現在也寫。 – user5858

回答

0

現在,您的問題是「是否可以製作Chrome擴展程序,以便在發生問題時保存表單」。

答案是:是的某些形式。但一般而言,100%可靠的方法並不是真的可行。

此類擴展已經存在。但是,它們並不總是很好。

至於架構,合理的做法是這樣的:

  1. 中包含要跟蹤的形式(也許所有他們的)所有頁面注入內容腳本。
  2. 檢測頁面上的表單。棘手的第一部分:在我們的AJAX世界中,並不是所有的東西都必須是一種可以被使用的形式。我想你可以只監視所有輸入字段的值和值的變化,並保存最新版本。
  3. 檢測提交。棘手的部分#2:它可以是一個形式submit,或者可以是一些JavaScript自己做XHR。 webRequest API可以幫助,但一般來說,很難確定「表單提交」是什麼。搜索可以生成一個完全合理的GET請求 - 是「表單提交」?
  4. 將表單還原爲預提交狀態。棘手的部分#3:他可以嚴重衝突與頁面自己的腳本(例如,對於基於角度的頁面,如果你只是用JS修改輸入的值,它不會更新模型)。
相關問題