2013-05-22 63 views
-2

我目前正在開發一個網站,很大程度上依賴於大部分JavaScript的小部件。其中一些是要求苛刻的進程,例如運行計時器或時鐘,所以我只希望這些腳本在激活相應的小部件時激活。我建議的解決方案是註釋掉每個這些腳本塊,並在小部件處於活動狀態時「取消註釋」它們。例如,如果我有一個倒數計時器小部件,我希望我的小部件的代碼完全註釋掉,直到用戶單擊小部件爲止。當用戶打開小部件時,我希望相應的腳本變成「未註釋」並執行。通過命令刪除JavaScript評論?

有沒有什麼辦法可以通過編程在Javascript代碼中實時添加或刪除註釋標記?我正在尋找一些我可以使用的方法或命令;不需要我在物理上改變代碼。

我在谷歌I/O會議演示中看到了這個,所以我只是想知道是否有人知道如何。

+1

可能有更好的方法來做到這一點。 (加上它是不可能的) – SomeShinyObject

+0

直接回答你的問題?不,您無法使用JavaScript修改JavaScript源代碼。 –

+0

我完全知道。其實我剛剛看到一個Google I/O會議。他們顯然使用這個作爲GMail撰寫按鈕,所以我想知道是否有人知道這是否可能。 –

回答

4

有一個更好的方法去做。如果您擔心堵塞事件循環:確保小部件無法訪問事件循環,但必須通過您的框架才能訪問它。這可以讓你「休眠」一個小部件,停止所有的事件。

要記住的另一件事是,當小部件被移除時,您還必須清理他們已安排的任何事件,否則您將運行爲「死」代碼。所有的事件都必須通過你的框架進行安排,這樣如果小部件被卸載,你可以清理它們。


將代碼讀取並加載到JavaScript引擎中,修改代碼後,該點將不會執行任何操作。

+0

我知道這不是處理性能問題的最佳方式,但我只是想知道是否可以像這樣改變源代碼中的註釋。雖然謝謝! –