作者mesak (米沙)
看板Ajax
標題[問題] 停止未命名的時間
時間Sat May 22 02:07:57 2010
最近在修改一個遊戲,全ajax 寫成的
frame 是用 prototype
其中調用到了 一個 函式 PeriodicalExecuter
跟 setInterval 應該是同一個類型的 function
遊戲中 會定時跑一個 函式
new PeriodicalExecuter(user_popup, 240);
因為沒有命名所以我也沒辦法將他停止...
即使 修改了 函式也是一樣 因為在修改之前他已經先跑了一次...
有沒有辦法把這個 給停止呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.204.70.172
1F:→ TonyQ:要追到核心實做,想辦法弄出真正的timeout/interval id才有 05/22 02:12
2F:→ TonyQ:辦法. 05/22 02:12
3F:→ TonyQ:通常這種狀況,如果這函式是 prototype lib 內建的,就先參 05/22 02:12
4F:→ TonyQ:考文件,如果是對方寫的,那就只能參考原碼. 05/22 02:13
5F:→ mesak:內建的 有API API 停止的方式 也是要先命名 05/22 02:20
6F:→ TonyQ:聽起來你應該是在user script環境下要搞這個? 05/22 07:22
7F:→ TonyQ:試著clearTimeout 或 clearInterval 比較小的數字(1,2,3)看 05/22 07:22
8F:推 TonyQ:看(竊笑) 05/22 07:22
9F:→ mesak:沒錯 XD 修改遊戲嚕... clearInterval 無效... 試了 12345都 05/22 10:53
10F:→ mesak:沒用 05/22 10:53
11F:→ mesak:試到 10 好像有了 XD... 05/22 12:15
12F:→ mesak:有辦法知道每個ID的函式嗎??~~ 05/22 12:16
13F:→ TonyQ:沒辦法,因為你也沒辦法在他call之前先蓋掉原本函式... 05/22 15:17
14F:→ TonyQ:還有其實有偷吃步,你自己下setTimeout 看你取到的id是多少 05/22 15:17
15F:→ TonyQ:原則上他都是遞加的 :) 05/22 15:18
16F:→ TonyQ:基本上在user script環境下,很多事情都是受限的... 05/22 15:19