我只是測試用另一個頁面替換整個頁面使用JavaScript和I found this answer與document.write
。至於爲什麼document.write
,我需要用同一頁面替換整個HTML,包括腳本和樣式。document.write和委託事件處理程序持久性
它做我想要的,但我似乎無法與我的事件處理程序保持一致。
$(document).delegate(...);
目前,我有怪異的結果:我的處理程序使用所有連接到document
。 In a fiddle I made,它附加一個處理程序。點擊後,事件觸發,重寫頁面,再次運行該函數 - 但它不附加處理程序。
但是在我的項目中,我正在執行相同的例程(d.w()
,然後添加處理程序)。它重新連接一次,處理程序工作,但在完成第二個例程(仍在同一頁面上)之後,它不再連接。
所以我的問題是:
- 當使用
d.w()
,執行現有的處理程序得到從document
刪除? - 是
window
以及document
以後相同d.w()
s?或者它們以某種方式「更新」 - 已經解析的腳本是否保留在內存中並在後續的
d.w()
之後運行?或者它們也被擦除?
'的$(document).find( 「跨度」)''返回在1'時'patch'運行這兩種情況下,但不知何故'.delegate'不工作的第二次。 – pimvdb