Adobe AIR(html / javascript):navigateToUrl的窗口参数不起作用

时间:2011-04-27 23:46:51

标签: javascript html navigation air

在Adobe Air项目(html / javascript)的默认浏览器中导航到Url时出现问题。

air.navigateToUrl(request, windowName)启动浏览器并显示页面,但它会为每个请求显示一个新标签。

以下是新Air应用程序中主页的一个非常简单的示例,它可以重现问题:

<html>
    <head>
        <title>navigateToURLTest</title>
        <script type="text/javascript" src="lib/air/AIRAliases.js"></script>        
    </head>
    <body>      
        <a href="#" onclick="javascript:air.navigateToURL(new air.URLRequest('http://www.adobe.com'), 'TestWindow');return false;">Same Tab</a>
    </body>
</html>

如何在同一窗口/标签中打开网址?

2 个答案:

答案 0 :(得分:0)

您应该让两个锚点都指定相同的目标:

<html>
    <head>
        <title>navigateToURLTest</title>
        <script type="text/javascript" src="lib/air/AIRAliases.js"></script>
    </head>
    <body>
        <a href="http://www.google.com" target="testp"
            onclick="javascript:air.navigateToURL(new air.URLRequest('http://www.adobe.com'), 
            'TestWindow');return false;">New Tab</a>
        <br />
        <a href="http://www.adobe.com" target="testp"
            onclick="javascript:air.navigateToURL(new air.URLRequest('http://www.adobe.com'), 
            'TestWindow');return false;">Same Tab</a>
    </body>
</html>

如果当前的选项卡列表中没有打开名称为"testp"的窗口,它将打开一个新选项卡,如果您已有,则会更改。

答案 1 :(得分:0)

此代码适用于我:

navigateToURL(new URLRequest("http://www.adobe.com"), '_self');

应用于您的代码:

<html>
<head>
    <title>navigateToURLTest</title>
    <script type="text/javascript" src="lib/air/AIRAliases.js"></script>
</head>
<body>
    <a href="#" onclick="air.navigateToURL(new air.URLRequest('http://www.adobe.com'),'TestWindow');return false;">Same Tab</a>
</body>
</html>

请注意两件事, rekaszeru在href中添加了一个链接(不应该在那里......与target =相同) 第二,onclick事件不需要“javascript:”