【问题标题】:Grabbing some specific text from the URL of the SWF file? Action Script 3.0从 SWF 文件的 URL 中获取一些特定文本?动作脚本 3.0
【发布时间】:2015-05-12 13:57:30
【问题描述】:

好的,所以我有一个将放置在网站上的横幅,我需要根据 url 更新 swf 横幅中的文本。我需要抓取的文本在 URL 中会是这样的。

product="abc"

“abc”可以是不同数量的字符。我没有确切的网址可以使用。

我在这里得到了部分答案:Get Current Browser URL - ActionScript 3

但是这并不能解释我如何具体地只获得产品的名称。

谢谢你

【问题讨论】:

    标签: actionscript-3 flash


    【解决方案1】:

    你可以这样做:

    //check to make sure you can use ExternalInterface
    if(ExternalInterface.available){
        //grab the url from JavaScript
        var url:String = ExternalInterface.call("window.location.href.toString");
        //make sure the url is valid and has querystring parameters (eg a ?)
        if(url && url.length > 0 && url.indexOf("?") > -1){
            //split the url and grab everything after the ?, convert that into URL variable object
            var params:URLVariables = new URLVariables(url.split("?")[1]);
            trace(params.product); //abc
        }
    }
    

    有关正确获取网址的更多信息,请参阅this question的答案

    【讨论】:

    • 感谢您的回答。我不明白代码中的一件事。 '跟踪(params.product);'而不是这一行,我使用'myText.text = params.product;'我也尝试使用 myText.text = url;即使这样也没有用。
    • trace 只是将您传递的任何内容放入闪存输出窗口。它相当于javascript中的console.log。我想传达的是,您通过params.product 访问您的价值。你是说myText.text = params.product 不起作用吗?
    • 是的,它不起作用。我将文件上传到服务器进行检查,但文本框仍然为空。我不明白的是“.product”是从哪里来的。这从未定义或创建。
    • 它是一个动态对象,由URLVariables 类在您传递一个url 变量字符串时创建。但很可能你没有走那么远,可能url var 由于某种原因没有填充。如果你这样做:myText.text = ExternalInterface.call("window.location.href.toString"),结果是什么? (确保将该代码不在内部 if 语句中)
    • 我得到 TypeError: Error #2007: Parameter text must be non-null。在 flash.text::TextField/set text() at draft_fla::Layer1_3/frame1() 在输出窗口中,服务器上没有任何内容。
    【解决方案2】:

    您需要一个网络服务或 flashvars 来了解当前的产品。

    希望对你有帮助。

    :)

    【讨论】:

    • 欢迎来到 Stack Overflow,为了让您的回答真正有用,请考虑添加一个示例。否则,这不是一个非常高质量的答案,更适合作为评论(我知道你还不能这样做)。如果你提供了一个不错的例子,我很乐意给你投赞成票(因为使用 FlashVars 也是实现这一点的好方法)。
    猜你喜欢
    • 1970-01-01
    • 2021-06-30
    • 2012-08-11
    • 1970-01-01
    • 2012-03-20
    • 1970-01-01
    • 1970-01-01
    • 2021-04-15
    相关资源
    最近更新 更多