脚本关闭窗口时防止出现确认框完美解决方案[支持各种浏览器]

在做网页的时候,关闭当前窗口,在的新版的浏览器中在使用脚本 window.close() 方法来关闭窗口时,总是会出现一个确认框,这带来非常不好的体验。

 通过网上查询资料,以下代码段可以屏蔽确认框。

代码如下:

 

//Close Page WithOut trips
    function CloseWin() 
    { 
        
var ua=navigator.userAgent 
        
var ie=navigator.appName=="Microsoft Internet Explorer"?true:false 
        
if(ie) 
        { 
            
var IEversion=parseFloat(ua.substring(ua.indexOf("MSIE ")+5,ua.indexOf(";",ua.indexOf("MSIE ")))) 
            
if(IEversion< 5.5
            { 
                
var str = '<object id=noTipClose classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">' 
                str 
+= '<param name="Command" value="Close"></object>'
                document.body.insertAdjacentHTML(
"beforeEnd", str); 
                document.all.noTipClose.Click(); 
            } 
            
else 
            { 
                window.opener 
=null;
                window.open(
'','_self','');//for IE7
                window.close(); 
            } 
        } 
        
else 
        { 
            window.close() 
        } 
    } 

 

 完整实例代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    
<title>无标题页</title>
    
<script type="text/javascript" language="JavaScript"> 
    
function Login()
    {  
        
var sFeatures="fullscreen=0,toolbar=0,location=0,locationbar=0,directories=0,status=1,statusbar=1,menubar=0,scrollbars=0,resizable=1,top=0,left=0";   
        window.open(
"OpenWithoutTips.htm",new Date().getTime(),sFeatures,false);
        window.opener 
=null;
        window.open(
'','_self','');
        window.close(); 
        
//CloseWin();
    } 
    
//Close Page WithOut trips
    function CloseWin() 
    { 
        
var ua=navigator.userAgent 
        
var ie=navigator.appName=="Microsoft Internet Explorer"?true:false 
        
if(ie) 
        { 
            
var IEversion=parseFloat(ua.substring(ua.indexOf("MSIE ")+5,ua.indexOf(";",ua.indexOf("MSIE ")))) 
            
if(IEversion< 5.5
            { 
                
var str = '<object id=noTipClose classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">' 
                str 
+= '<param name="Command" value="Close"></object>'
                document.body.insertAdjacentHTML(
"beforeEnd", str); 
                document.all.noTipClose.Click(); 
            } 
            
else 
            { 
                window.opener 
=null;
                window.open(
'','_self','');//for IE7
                window.close(); 
            } 
        } 
        
else 
        { 
            window.close() 
        } 
    } 
    
</script> 
</head>
<body>
<input id="login" type="button" value="Login" onclick="Login()" /> 
</body>
</html>

 

 弹出全屏显示页面(去除工具栏,地址栏.使用于主流浏览器),并且关闭父窗体

 

 

 

posted @ 2010-04-13 08:58  undefined?  阅读(1117)  评论(0编辑  收藏  举报