• window.open弹出窗口


    转自:http://www.cnblogs.com/lovemyth/archive/2007/01/16/622091.html

    我们可以用很多种方式弹出窗口,今天盗版整理了下别人的成果,让自己以后用到的时候有个参考.

                                             一、window.open() 基础知识
         1、window.open()支持环境:  JavaScript1.0+/JScript1.0+/Nav2+/IE3+/Opera3+
         2、基本语法:window.open(pageURL,name,parameters)
                      其中:
                                pageURL 为子窗口路径
                                name 为子窗口句柄
                                parameters 为窗口参数(各参数用逗号分隔)
         3、简单示例:

    <script language="javascript" type="text/javascript"> 
    <!-- 
    window.open ('page.aspx','newwindow','height
    =100,width=400,top=0,left=0,toolbar=no,menubar=no,scrollbars=no, resizable=no,location=no, status=no') 
    --> 
    </script>
         脚本运行后,page.aspx将在新窗体newwindow中打开,宽为100,高为400,距屏顶0象素,屏左0象素,无工具条,无菜单条,无滚动条,不可调整大小,无地址栏,无状态栏。其中<!-- 和 -->是对一些版本低的浏览器起作用,在这些低版本浏览器中不会将标签中的代码作为文本显示出来,要养成这个好习惯。
     
         4、可用的parameters:其中yes/no也可使用1/0;pixel value为具体的数值,单位象素。
               参数   |   取值范围   |   说明 

     alwaysLowered     |    yes/no      |    指定窗口隐藏在所有窗口之后
        alwaysRaised     |    yes/no      |    指定窗口悬浮在所有窗口之上 
             depended     |     yes/no      |    是否和父窗口同时关闭
           directories     |     yes/no      |     Nav2和3的目录栏是否可见
                 height     |   pixel value  |    窗口高度 
              hotkeys     |     yes/no       |     在没菜单栏的窗口中设安全退出热键 
        innerHeight     |   pixel value  |      窗口中文档的像素高度
        innerWidth      |   pixel value  |     窗口中文档的像素宽度
             location      |     yes/no      |      位置栏是否可见
             menubar      |    yes/no       |     菜单栏是否可见 
        outerHeight      |  pixel value  |     设定窗口(包括装饰边框)的像素高度
        outerWidth      |  pixel value   |     设定窗口(包括装饰边框)的像素宽度
            resizable       |    yes/no       |     窗口大小是否可调整
             screenX      |   pixel value  |     窗口距屏幕左边界的像素长度
             screenY      |  pixel value   |     窗口距屏幕上边界的像素长度
           scrollbars      |     yes/no       |     窗口是否可有滚动栏
                status       |     yes/no      |      是否显示状态栏内的信息 
              titlebar       |     yes/no      |     窗口题目栏是否可见
              toolbar       |     yes/no      |     窗口工具栏是否可见
               Width       | pixel value    |     窗口的像素宽度
               z-look       |     yes/no      |     窗口被激活后是否浮在其它窗口之上

                                                   二、window.open() 应用与技巧
         1.用一个连接调用
     <script language="javascript" type="text/javascript">
    <!-- 
    function openwin()
     

     window.open (
    "page.aspx""newwindow""height=100, width=400, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no"
     }
     
    --> 
        
    </script>

    <href="#" onclick="openwin()">打开一个窗口</a> 
     
    *使用的“#”是虚连接,若把“#”换成一个页面,则效果是:打开这个页面的同时弹出小窗口。

        2、定时关闭弹出窗口
         只需在窗口页面(注意是窗口页面)加入以下代码即可。
        <script language="JavaScript" type="text/javascript"> 
    function closeit() 
    {
    setTimeout(
    "self.close()",10000)
    }
     
        
    </script>
    其中,10000的单位是毫秒。再在<body>变成<body onload="closeit()">即可。

        3、主窗口和弹出窗口处于一个页面
          一般,主窗口和弹出窗口都是分别为两个页面,可否都处在一个页面呢?当然是可以的。
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        
    <title>无标题页</title>
        
    <script language="JavaScript" type="text/javascript"> 
    function openwin() 
    {
    OpenWindow
    =window.open("""newwin""height=250, width=250,toolbar=no,scrollbars="+scroll+",menubar=no"); 
    OpenWindow.document.write(
    "<BODY BGCOLOR=#ffffff>"
    OpenWindow.document.write(
    "<h1>Hello!</h1>"
    OpenWindow.document.write(
    "New window opened!"
    OpenWindow.document.write(
    "</BODY>"
    OpenWindow.document.write(
    "</HTML>"
    OpenWindow.document.close()
    }
     
        
    </script>

    </head>
    <body>
        
    <input type="button" onclick="openwin()" value="打开窗口" />
    </body>
    </html>

        4、经常的应用
    //==========================================================================
    //
    //  代码描述:打开一个新的没有状态栏、工具栏、菜单栏、定位栏,
    //            不能改变大小,且位置居中的新窗口
    //  
    //  传入参数:pageURL - 传递链接
    //            innerWidth - 传递需要打开新窗口的宽度
    //            innerHeight - 传递需要打开新窗口的高度
    //  
    //  返回参数:无
    //
    //
    //==========================================================================
    function g_OpenWindow(pageURL, innerWidth, innerHeight)
    {    
        var ScreenWidth 
    = screen.availWidth
        var ScreenHeight 
    = screen.availHeight
        var StartX 
    = (ScreenWidth - innerWidth) / 2
        var StartY 
    = (ScreenHeight - innerHeight) / 2
        window.open(pageURL, 
    '''left='+ StartX + ', top='+ StartY + ', Width=' + innerWidth +', height=' + innerHeight + ', resizable=no, scrollbars=yes, status=no, toolbar=no, menubar=no, location=no')
    }


                                                        三、模式窗口函数弹出窗口
    //==========================================================================================
    //
    // 代码描述:打开模式窗口函数,打开一个模式窗口不包含菜单、状态条、工具条、定位栏
    //
    // 传入参数:pageURL - 传递链接
    //            innerWidth - 传递需要打开新窗口的宽度
    //            innerHeight - 传递需要打开新窗口的高度
    // 返回参数:无
    //
    //
    //==========================================================================================
    function g_OpenModalWindow(pageURL, innerWidth, innerHeight)
    {
        window.showModalDialog(pageURL, 
    null'dialogWidth:' + innerWidth + 'px;dialogHeight:' + innerHeight + 'px;help:no;unadorned:no;resizable:no;status:no')
    }


    //==========================================================================================
    //
    // 代码描述:打开模式窗口函数,打开一个模式窗口不包含菜单、状态条、工具条、定位栏 ,并且返回值
    //
    // 传入参数:pageURL - 传递链接
    //            innerWidth - 传递需要打开新窗口的宽度
    //            innerHeight - 传递需要打开新窗口的高度
    // 返回参数:模式窗体返回的returnValue
    //
    //
    //==========================================================================================
    function g_OpenreturnWindow(pageURL, innerWidth, innerHeight)
    {
        var returnv;
        returnv
    =window.showModalDialog(pageURL, null'dialogWidth:' + innerWidth + 'px;dialogHeight:' + innerHeight + 'px;help:no;unadorned:no;resizable:no;status:no')
        
    return returnv;
    }


    //==========================================================================================
    //
    // 代码描述:打开模式窗口函数,打开一个模式窗口不包含菜单、状态条、工具条、定位栏
    //
    // 传入参数:pageURL - 传递链接
    //            innerWidth - 传递需要打开新窗口的宽度
    //            innerHeight - 传递需要打开新窗口的高度
    // 返回参数:无
    //
    //
    //==========================================================================================
    function g_OpenReturnModalWindow(pageURL, innerWidth, innerHeight)
    {
        window.showModalDialog(pageURL, 
    null'dialogWidth:' + innerWidth + 'px;dialogHeight:' + innerHeight + 'px;help:no;unadorned:no;resizable:no;status:no');
        
    return false;
    }

  • 相关阅读:
    Server.MapPath()
    正斜杠(/)与反斜杠(\)总结
    ASP.NET DridView 显示行号
    Win7 64位 IIS未能加载文件或程序集“System.Data.SQLite”或它的某一个依赖项
    DataTable中Rows.RemoveAt(i)和Rows(i).Delete的区别
    字段与属性的区别
    VS 创建assemblyinfo项目信息文件
    GridView的RowDataBound事件 获取当前行的某个数据列
    ASPxHtmlEditor上传重命名的方法
    关于ModalPopup控件不能调用CS事件代码的问题
  • 原文地址:https://www.cnblogs.com/Randy0528/p/961320.html
Copyright © 2020-2023  润新知