Flex关闭浏览器窗口 兼容IE6和IE7

flex可以通过调用js代码来实现关闭浏览器窗口。代码如下:

Alert.buttonWidth=60;
				Alert.yesLabel="是";
				Alert.cancelLabel="否";
				var alert:Alert=Alert.show("确定要退出系统吗?","提示",Alert.YES|Alert.CANCEL,this,function(event:CloseEvent):void{
					switch(event.detail){
						case Alert.YES:
							//javascript:window.opener=null;window.close()");//没有确认对话框
							//var request:URLRequest = new URLRequest("javascript:window.close()");//有确认对话框
							//如果不加window.open('','_self') 则在IE7下会自动提示 是否关闭当前窗口 
							var request:URLRequest = new URLRequest("javascript:window.opener=null;window.open('','_self');window.close()");
							navigateToURL(request,"_self");
							break;
						case Alert.CANCEL:
							break;
					}
				},null,Alert.CANCEL);
				PopUpManager.centerPopUp (alert);
				var newX:Number = (Application.application.width-alert.width)/2;
           		var newY:Number = (Application.application.height-alert.height)/2;
           		alert.move(newX,newY);

 

注意:

    window.open('','_self');如果不加这句代码,在IE6下测试是正确的,但是在IE7下会出现问题。IE7下点击Flex的确定按钮后,浏览器会弹出一个提示框提示是否关闭窗口。

你可能感兴趣的:(JavaScript,浏览器,Flex)