Alert.show()またはFlash Playerレベルのポップアップを使用するのではなく、テキストを使用してブラウザのポップアップウィンドウを作成しようとしています。
私は周りを見回して、URI Data Schemeでいくつかのことを試しましたが、皆さんの1人が以前に同様のことをした可能性があると思いました。
更新:以下で自分自身に答えた
Alert.show()またはFlash Playerレベルのポップアップを使用するのではなく、テキストを使用してブラウザのポップアップウィンドウを作成しようとしています。
私は周りを見回して、URI Data Schemeでいくつかのことを試しましたが、皆さんの1人が以前に同様のことをした可能性があると思いました。
更新:以下で自分自身に答えた
FlexのexternalInterfaceAPIを使用して、JavaScript関数を呼び出すことができます。したがって、新しいポップアップダイアログをトリガーします。
http://learn.adobe.com/wiki/display/Flex/External+Interface
http://www.quirksmode.org/js/popup.html
アップデート:
var urlstr:String = "javascript:NewWindow=window.open('"+<any string> +"','newWin','width=400,height=300,left=0,top=0,toolbar=No,location=No,scrollbars=No,status=No,resizable=No,fullscreen=No'); NewWindow.focus();void(0);");
var url:URLRequest = new URLRequest(urlstr);
次のコードはトリックを行います:
<fx:Script>
<![CDATA[
import flash.net.navigateToURL;
private function urlJump():void{
var url:URLRequest = new URLRequest("javascript:NewWindow=window.open(''," +
"'newWin','width=400,height=300,left=0,top=0,toolbar=No,location=No,scrollbars=No,status=No,resizable=No,fullscreen=No'); " +
"NewWindow.focus();void(0); " +
"NewWindow.document.write('hello');");
navigateToURL(url, "_self" );
}
]]>
</fx:Script>
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<s:Button click="urlJump()" />
そして、フレックスウィンドウを開いたままにして、新しいウィンドウをポップアップするだけでいいですか?私が覚えていることから、これはJavascript(window.open)を経由する必要があるため、Flashでは不可能ですが、ExternalInterfaceを使用して直接呼び出すことができる場合があります。
if (ExternalInterface.available)
{
ExternalInterface.call("window.open", "http://www.adobe.com", "win", "height=200,width=300,toolbar=no,scrollbars=yes");
}
URLについては、独自に指定することも、 uriデータスキームを使用することもでき、機能するはずです。