[問題] 停止未命名的時間

看板Ajax作者 (米沙)時間15年前 (2010/05/22 02:08), 編輯推噓1(1015)
留言16則, 2人參與, 最新討論串1/2 (看更多)
最近在修改一個遊戲,全ajax 寫成的 frame 是用 prototype 其中調用到了 一個 函式 PeriodicalExecuter 跟 setInterval 應該是同一個類型的 function 遊戲中 會定時跑一個 函式 new PeriodicalExecuter(user_popup, 240); 因為沒有命名所以我也沒辦法將他停止... 即使 修改了 函式也是一樣 因為在修改之前他已經先跑了一次... 有沒有辦法把這個 給停止呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.204.70.172

05/22 02:12, , 1F
要追到核心實做,想辦法弄出真正的timeout/interval id才有
05/22 02:12, 1F

05/22 02:12, , 2F
辦法.
05/22 02:12, 2F

05/22 02:12, , 3F
通常這種狀況,如果這函式是 prototype lib 內建的,就先參
05/22 02:12, 3F

05/22 02:13, , 4F
考文件,如果是對方寫的,那就只能參考原碼.
05/22 02:13, 4F

05/22 02:20, , 5F
內建的 有API API 停止的方式 也是要先命名
05/22 02:20, 5F

05/22 07:22, , 6F
聽起來你應該是在user script環境下要搞這個?
05/22 07:22, 6F

05/22 07:22, , 7F
試著clearTimeout 或 clearInterval 比較小的數字(1,2,3)看
05/22 07:22, 7F

05/22 07:22, , 8F
看(竊笑)
05/22 07:22, 8F

05/22 10:53, , 9F
沒錯 XD 修改遊戲嚕... clearInterval 無效... 試了 12345都
05/22 10:53, 9F

05/22 10:53, , 10F
沒用
05/22 10:53, 10F

05/22 12:15, , 11F
試到 10 好像有了 XD...
05/22 12:15, 11F

05/22 12:16, , 12F
有辦法知道每個ID的函式嗎??~~
05/22 12:16, 12F

05/22 15:17, , 13F
沒辦法,因為你也沒辦法在他call之前先蓋掉原本函式...
05/22 15:17, 13F

05/22 15:17, , 14F
還有其實有偷吃步,你自己下setTimeout 看你取到的id是多少
05/22 15:17, 14F

05/22 15:18, , 15F
原則上他都是遞加的 :)
05/22 15:18, 15F

05/22 15:19, , 16F
基本上在user script環境下,很多事情都是受限的...
05/22 15:19, 16F
文章代碼(AID): #1Bzim0Zj (Ajax)
文章代碼(AID): #1Bzim0Zj (Ajax)