在URLRequest中加载变量。?

时间:2011-07-19 14:54:29

标签: flash actionscript-3

想要做的是让人们提交一个URL,然后在舞台上显示图像。 所以我去写了我的代码,但它没有像我预期的那样工作..这里是代码

var myurl:String ; // a var to load the text in it
var reques:URLRequest = new URLRequest (myurl) ; // the urlrequest (i know that this only accept strings but what to do !!)
var loader:Loader = new Loader(); // the loader


loadit.addEventListener (MouseEvent.CLICK , loadthatimage ) //  button

function loadthatimage (ev : MouseEvent){
myurl = geurl.text ;  // geurl is the txt box i have on the stage
loader.load (reques);
addChild(loader);

}

一些帮助将不胜感激..提前感谢

2 个答案:

答案 0 :(得分:1)

不是使用字符串创建URLRequest,而是将其创建为空并在按钮上单击设置URL:

var reques:URLRequest = new URLRequest (); //pass nothing yet
var loader:Loader = new Loader(); // the loader

loadit.addEventListener (MouseEvent.CLICK , loadthatimage ) //  button

function loadthatimage (ev : MouseEvent){
    reques.url = geurl.text ;  // geurl is the txt box i have on the stage
    loader.load (reques);
    addChild(loader);
}

答案 1 :(得分:1)

Shanethehat的答案应该很有效。但我会更进一步,并说在你需要之前甚至不创建URLRequest。此外,在此示例中,您可以立即调用addChild()而不是函数。

var loader:Loader = new Loader(); // the loader
addChild(loader);    

loadit.addEventListener (MouseEvent.CLICK , loadthatimage ) //  button

function loadthatimage (ev : MouseEvent){
    loader.load (new URLRequest(geurl.text));
}

但要注意,您需要注意安全问题。首先,Flash Player安全沙箱将阻止您在不设置跨域策略的情况下加载某些内容。但此外,您通过让他们加载他们想要的任何URL来引入重大的安全漏洞。

有人可能会输入恶意URL,从而导致Flash Player中出现严重破坏。或者他们可以加载他们创建的SWF,它在您的代码中播放。因此,您可能需要评估产品的安全性。