是否可以在Chrome開發工具中保存頁面的當前狀態及其JavaScript變量,以便以後重新加載相同的狀態?Chrome開發人員工具:保存javascript狀態
作爲一些背景:我正在研究一個有問題和答案系統的項目。這種機制由JavaScript處理,我的工作流程目前非常糟糕,因爲我編碼問題編號爲10,並且每次需要測試我的代碼時都需要回答前9個問題。
我想回答的問題1-9,保存頁面上的變量的狀態,進行修改後第一次重新加載狀態,直到問題質疑10代碼和測試9
是否可以在Chrome開發工具中保存頁面的當前狀態及其JavaScript變量,以便以後重新加載相同的狀態?Chrome開發人員工具:保存javascript狀態
作爲一些背景:我正在研究一個有問題和答案系統的項目。這種機制由JavaScript處理,我的工作流程目前非常糟糕,因爲我編碼問題編號爲10,並且每次需要測試我的代碼時都需要回答前9個問題。
我想回答的問題1-9,保存頁面上的變量的狀態,進行修改後第一次重新加載狀態,直到問題質疑10代碼和測試9
這很難使這個按照您的描述工作,因爲the variables on the page
的概念不容易處理。如果你在代碼中添加一個變量名稱會發生什麼?
有幾件事你可以嘗試。
1.從測驗
他們是必要的測試的第一個9個問題?
2.找出變量被設置什麼,然後將它們備份
例如,如果window.questionIndex
和window.answersGiven
屬性描述頁面的狀態,你可以備份它們是這樣的:
function backup(){
localStorage.setItem("questionIndex", JSON.stringify(window.questionIndex));
localStorage.setItem("answersGiven", JSON.stringify(window.answersGiven))
}
function restore(){
window.questionIndex = JSON.parse(localStorage.getItem("questionIndex"));
window.answersGiven = JSON.parse(localStorage.getItem("answersGiven");
}
3.點擊自動通過測驗
的過程將是這樣做的腳本訣竅?
var interval = setInterval(function(){
$("#answer1").click()
}, 100)
setTimeout(function(){
clearInterval(interval);
}, 100 * 9)
4.它整合
創建一個空白頁面,並只加載模塊就可以了問題#10之前獨立開發的最後一個問題。一旦coe按預期工作,將其整合到完整的測驗中。
聽起來好像你需要編寫一些可重用的代碼,而不是分別實現每個單獨的問題。 –
@ DanielA.White當然,問題1-9是可重用的。這是問題10,不幸的是需要編入一個例外。 – Antti