我有以下JS代碼,它檢查網頁以查看是否以固定間隔在其上發佈新密鑰。現在的問題是:在函數內部調用函數時的不同結果
當
start()
直接從開發控制檯(F12)呼籲,結果是正確的,當我的功能$(document).ready
調用它的結果是錯誤的,是的,我已經證實,沒有100次網頁上的內容正在改變。我只是好奇,看看是否瓦爾是不同步的,所以我在
$(document).ready
稱爲start()
2次了,還是錯的結果,但是,當我打電話從F12satrt()
(從$(document).ready
調用它20次後,我得到正確的結果。我已經確認所有事件都在等待對方finsih(也許叫
synchronous
)及其不正確的,任何單一的語句在不同的線程運行。
釷如果它可能如果F12
稱它,那麼它的正確,如果$(document).ready
稱它是錯誤的。
一個intresting一點要注意:
當我在我的代碼並沒有$(document).ready
,我叫wow()
從start()
這也給了我錯誤的結果,但F12給人正確的。 現在,我有$(document).ready
,如果我從它調用start()
哪些inturn調用wow()
給我錯誤的結果,但現在如果我從我的控制檯調用start()
,它給了我正確的結果!
我acually想簡單的形式做:按頁
- 等待完成加載
- 電話
wow()
- 等待
wow()
完成 - 刷新頁面
相同的過程在無限循環中繼續。
謙虛感謝任何幫助,這已經讓我的時間差不多5-6小時!
JS代碼:http://pastebin.com/9UJYdepU
編輯:
正確的輸出:
a.js:136 Started
a.js:33 Called Wow
a.js:83 ---------------------KEY 7.0----------------
a.js:83 ---------------------KEY 7.1----------------
a.js:83 ---------------------KEY 7.2----------------
a.js:102 LAST used keys : Saab,Volvo,BMW,4E69G-8GNG4-JCZ4Z,H63HQ-VHWPX-ZCJ8J,FKZGK-MXL5C-P2YTE,4E69G-xxxxxx-JCZ4Z,4E69G-AAAxx-JCZ4Z,4E69G-AAAxx-JasasCZ4Z,4E69G-AAAxx-JasaaaasCZ4Z
a.js:140 WOWO DONW
錯誤輸出:
Started
a.js:33 Called Wow
a.js:102 LAST used keys : Saab,Volvo,BMW,4E69G-8GNG4-JCZ4Z,H63HQ-VHWPX-ZCJ8J,FKZGK-MXL5C-P2YTE,4E69G-xxxxxx-JCZ4Z,4E69G-AAAxx-JCZ4Z,4E69G-AAAxx-JasasCZ4Z,4E69G-AAAxx-JasaaaasCZ4Z
a.js:140 WOWO DONW
document.getElementsByTagName("p");
給出:http://pastebin.com/JXQ9483N localStorage.getItem("usedp")
給出Saab,Volvo,BMW,4E69G-8GNG4-JCZ4Z,H63HQ-VHWPX-ZCJ8J,FKZGK-MXL5C-P2YTE,4E69G-xxxxxx-JCZ4Z,4E69G-AAAxx-JCZ4Z,4E69G-AAAxx-JasasCZ4Z,4E69G-AAAxx-JasaaaasCZ4Z