| 修正loadMovie()中使用onLoad的漏洞 |
|
修正loadMovie()中使用onLoad的漏洞 |
| 作者:佚名 来源:闪吧 作者: Super-Tomato 更新:2007-1-13 20:49:02 错误报告 我要投稿 |
呵呵... 今天就來談一下如果修正一下Flash的onLoad事件的漏洞, 不知道有沒有人在載入MC時使用過onLoad事件呢?? 是否無法執行而頭痛不已呢??
在這裡提供兩種情況下解決的方法 :)
情況一 : 先請下載這個例子看看, 在場景上建立一個MC元件, 并以這個MC載入圖片或swf
点击浏览该文件
是否無法執行這個onLoad部份呢??
loader.onLoad = function() { trace("on load"); }
那麼跟著就教你們解決方法, 選擇此場景MC後打開ACTION PANEL後如圖:

只要增加 // , 這樣就可以解決了 :), 是不是很簡單呢??
修正例子 :
点击浏览该文件
情況二 : 就是使用createEmptyMovieClip()建立MC元件, 這樣就無法使用上面的方法了.. 至於這個漏洞就拷貝以下的代碼讓MC不被刷新 :)
sol = function (f) { if (__onLoadHandler__ == undefined) { _global.__onLoadHandler__ = {}; } __onLoadHandler__[this] = f; }; gol = function () { return __onLoadHandler__[this]; }; MovieClip.prototype.addProperty("onLoad", gol, sol);
以上代碼固定了...不用任何的修改 :), 接下來這樣使用即可
this.createEmptyMovieClip("loader",1); loader.onLoad=function(){ trace("loaded") } loader.loadMovie("doggy.jpg");
修正例子 :
点击浏览该文件
|
|
| 文章录入:skyuu 责任编辑:skyuu |
|
| 【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |