3

StageWebView.loadURL() 上是否有任何解决方案,如何处理具有 target="_blank" 的 HTML 页面中的 URL?

这是一个移动的Android应用程序。(标签视图应用程序)

希望有人可以提供帮助。

谢谢

4

5 回答 5

1

一种选择是 StageWebViewBridge。

StageWebViewBridge 是 flash.media.StageWebView 的扩展版本。

  • 使用 AS3 - JS 通信扩展 loadString 方法。
-Extends Bitmap class, you can modify his x,y,alpha,rotation,visible, etc ( Version 1 Beta )
-Communicates Actionscript with Javascript.
-Communicates Javascript with Actionscript.
-Load local files and resources in a easy way.
-Extends loadString method with AS3 - JS communication.
-Extends loadString method to load local resources.
-Lets you take an SnapShot to use as the bitmapData of the bitmap.

StageWebViewBridge 来源:https ://code.google.com/p/stagewebviewbridge/

于 2014-01-24T03:32:28.880 回答
0

由于它被宣布为官方错误,adobe QA 所有者 Sanjay C. 添加了一条评论:“能够通过附加项目重现该问题。发送给 IRB。”

所以,希望下一个 Build 能解决这个问题。

此致

于 2012-02-03T12:27:37.290 回答
0

好的,所以我能找到的这个问题的唯一解决方案是将页面(包含链接)作为字符串加载URLLoader并替换其指定的部分。最后通过StageWebView.loadString()方法加载它。

当站点是动态的并且包含 JavaScript 时会出现问题。我还用绝对路径替换了一些相对链接。

就是这样......但我真的希望adobe可以使用该StageWebView.loadURL()方法加载那些“_blank”链接。

于 2012-01-21T14:07:50.493 回答
0

我从未使用过 StageWebView,但我知道它真的很有限。使用 HTMLLoader 时,您可以设置自定义 HTMLHost 实例,指定在打开 _blank 时使用当前 HTMLLoader。但是,我认为 StageWebView 不可能。

public class MyHTMLHost extends HTMLHost
{   
    public function MyHTMLHost(defaultBehaviors:Boolean=false)
    {
        super(defaultBehaviors);
    }

    override public function createWindow(windowCreateOptions:HTMLWindowCreateOptions):HTMLLoader
    {
        // all JS calls and HREFs to open a new window should use the existing window
        return htmlLoader;
    }
}
于 2012-01-20T13:23:59.183 回答
0

如果您想在用户单击 StageWebView 中的链接时捕获,请为位置更改事件 (LocationChangeEvent) 添加一个事件侦听器。

这个 LocationChangeEvent 将包括他们要去和目标的 URL。然后,您可以阻止 URL 加载,让它继续(不做任何事情)或以任何其他方式处理它,包括加载另一个 URL。

如果要加载另一个 URL,请先使用 stageWebView.stop() 停止加载。您还应该调用 event.preventDefault()。然后,您可以尝试

注意:还有另一个名为 locationChange 的事件可能会有所帮助。

于 2012-01-25T15:27:30.783 回答