2

我开发了 Adob​​e AIR 应用程序,它可以在 HTML 控件中打开网站的 cpanel。我意识到 HTML 控件打开在同一窗口中打开的链接,但是它不会打开在新窗口中打开的链接,即具有属性 (target="_blank) 的链接,如下所示:

<a href"" target="_blank"> Opens in new window </a>

我在网上搜索过,虽然我在这里找到了一个带有“_blank”链接的 AIR HTML解决方案,但它会在浏览器中打开该链接,而且它太旧了(2008 年 9 月)。那么,有人知道另一种打开链接的简单方法吗?

4

1 回答 1

2

我重写了您发现更改锚目标的示例,现在链接在同一窗口中打开。但是这种方法有局限性——只有静态链接是固定的,任何试图在新窗口中打开链接的 JS 方法都会失败。

<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication
    xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"
    initialize="init()">
<mx:Script>
<![CDATA[
    private function init():void
    {
        html.htmlText =
            "<html><body>" +
            "<a href='http://adobe.com' target='_blank'>Adobe (blank)</a><br/>" +
            "<a href='http://ixbt.com' target='_self'>iXBT (self)</a>" +
            "</body></html>";
        html.addEventListener(Event.COMPLETE, onHTMLComplete);
    }

    private function onHTMLComplete(event:Event):void
    {
        var document:Object = html.domWindow.document;
        for each (var anchor:Object in document.getElementsByTagName("a"))
        {
            if (anchor.hasOwnProperty("target"))
            {
                if (anchor.target == "_blank")
                {
                    anchor.target = "_self";
                }
            }
        }
    }

]]>
</mx:Script>
    <mx:HTML id="html" width="100%" height="100%"/>
</mx:WindowedApplication>
于 2011-04-16T06:53:12.903 回答