zoukankan      html  css  js  c++  java
  • window.open

    
    
    openwin()函数就是打开一个窗口。
    调用方法: 方法一:<body onload="openwin()"> 浏览器读页面时弹出窗口; 方法二:<body onunload="openwin()"> 浏览器离开页面时弹出窗口; 方法三:用一个连接调用:   <a href="#" onclick="openwin()">打开一个窗口</a>   注意:使用的“#”是虚连接。 方法四:用一个按钮调用:    <input type="button" onclick="openwin()" value="打开窗口">
    
    
     (本人例子)

    a.html----------父
    <a target="_blank" onclick="freight_ajax();" id="freight_ajax" style="display: none;">刷新</a>
     function feeTemplate(){
    var flag = window.open( 'main.php?m=logistics&s=admin_logistics_temp&type=add','','height=500, width=800,Top=200,Left=300,resizable=yes,scrollbars=yes' );
        }
    //运费动态刷新
    function freight_ajax(){
    var url = "<{$config.weburl}>/main.php?m=product&s=admin_product";
    var pars = 'freight_ajax=1';
    setTimeout(function(){
    $.post(url, pars,showResponse);
    function showResponse(htmls)
    {
    $('#freight').html(htmls);
    }
    },1000);
    }
    b.html-----------子
    <form id="form" action="" method="post" onsubmit="return chk()"></form>
    function chk(){
      if(window.opener){
       var aa=window.opener.document.getElementById("freight_ajax"); //抓取父级窗口的按钮
      $(aa).click();
      }
    }
    =================================================

    js弹窗&返回值(window.open方式)

    test.htm
    <html >
    <head> 
    <title></title> 
    <script type="text/javascript"> 
    <!-- 
    function winOpen() 
    {   

    window.open("test2.php","name1","width=100,height=200,toolbar=no,scrollbars=no,menubar=no,screenX=100,screenY=100"); 


    --> 
    </script> 
    </head> 
    <body> 
    <textarea id="text1" name="text1"></textarea> 
    <input type="button" value="submit" name="submit" onclick="javascript:winOpen();" /> 
    </body> 
    </html> 
    </body> 
    </html> 

    -------------------------------------------- 

    test2.htm

    <html >
    <head> 
    <title></title> 
    <script type="text/javascript"> 
    <!-- 
    function winBack() 

           if(window.opener) { 
                  fWindowText1 = window.opener.document.getElementById("text1"); 
                  fWindowText1.value = fWindowText1.value + "mayongzhan"; 
                  window.close(); 
           } 

    --> 
    </script> 
    </head> 
    <body> 
    <input type="button" name="back" value="back" onclick="javascript:winBack();" /> 
    </body> 
    </html> 

    -------------------------------------------- 

    window.open详解 

    window.open("sUrl","sName","sFeature","bReplace"); 

    sUrl:可选项。字符串(String)。指定要被加载的HTML文档的URL地址。假如无指定值,则about:blank的新窗口会被显示。 

    sName:可选项。字符串(String)。指定打开的窗口的名字。这个名字可以用于form或a对象的TARGET属性。此名字也可以使用下列通用名称:_media:IE6.0在浏览器左边的媒体面板内打开sUrl。 

    _blank:在新窗口中打开sUrl。 
    _parent:在当前框架的父框架内打开。假如当前框架无父框架,此参数值等同于_self。 
    _search:IE5.0在浏览器左边的搜索面板内打开sUrl。 
    _self:sUrl在当前窗口中打开,覆盖当前文档。 
    _top:在所有框架之外的最顶层窗口中打开sUrl。假如当前窗口无框架结构,此参数值等同于_self。 

    sFeatures:可选项。字符串(String)。指定窗口装饰样式。使用下面的值。多个之间用逗号隔开。只有当新的浏览器窗口被建立时,此参数的设置才会发生作用。channelmode={yes|no|1|0}指定是否将窗口显示为频道模式。默认值为no。 

    directories={yes|no|1|0}指定是否显示「链接」按钮。默认值为yes。 
    fullscreen={yes|no|1|0}指定是否以全屏方式显示窗口。默认值为no。要小心使用全屏模式,因为这种模式会隐藏浏览器窗口的标题栏和菜单。如果没有在页面内提供关闭窗口的功能,用户可以使用ALT+F4快捷键关闭窗口。 
    height=number设置窗口的高度。最小值为100。 
    left=number设置窗口左上角相对于桌面的横坐标。单位为像素(px)。 
    width=number设置窗口的宽度。最小值为100。 
    top=number设置窗口左上角相对于桌面的纵坐标。单位为像素(px)。 
    location={yes|no|1|0}设置是否显示浏览器窗口的地址栏。默认值为yes。 
    menubar={yes|no|1|0}设置是否显示浏览器窗口的菜单栏。默认值为yes。 
    resizable={yes|no|1|0}设置窗口是否允许被用户改变尺寸。默认值为yes。 
    scrollbars={yes|no|1|0}设置窗口是否可以具有滚动条。默认值为yes。 
    status={yes|no|1|0}设置是否显示浏览器窗口的状态栏。默认值为yes。 
    titlebar= {yes|no|1|0}设置是否显示浏览器窗口的标题栏。除非调用程序是HTML应用程式(HTA)或被信任的对话框,否则此参数将被忽略。默认值为 yes。toolbar={yes|no|1|0}设置是否显示浏览器窗口的工具条。默认值为yes。 
    bReplace:可选项。布尔值(Boolean)。false|true。false:新打开的文档覆盖历史列表里的当前文档。true:文新打开的文档被简单的添加到历史列表的最后。 

    返回值: 
    oNewWindow:对象(Element)。返回对新的window对象的引用。 

    说明: 
    打开新窗口并载入sUrl指定的HTML文档。默认情况下,此方法建立的新窗口具有默认的高度、宽度,以及菜单、工具条等。您可以使用sFeatures参数改变它们的设置。 
    当sFeatures参数被指定时,没有在参数值的列表中出现的装饰样式都会被自动设置为no。 
    IE5+中允许控制打开的窗口的标题栏。通过在被信任的程序像Microsoft?VisualBasic或者HTML应用程式(HTA)中打开窗口可以关闭标题栏。他们是可信任的因为他们使用Microsoft?InternetExplorer作为浏览器接口。 
    当文档内的对象上的事件(event)激发的函数调用open方法时,window对象的open方法被使用。而当文档内的对象上的事件(event)直接使用open方法时,document对象的open方法被使用。

    转载:http://wenjie12201.javaeye.com/blog/350374

    ------------------------------------------------------------------------------------------------------

     【3、用函数控制弹出窗口】  
       
      下面是一个完整的代码。  
      <html>  
      <head>  
      <script LANGUAGE="JavaScript">  
      <!--  
      function openwin() {  
      window.open ("page.html", "newwindow", "height=100, width=400, toolbar =no, menubar=no, 
    scrollbars=no, resizable=no, location=no, status=no") //写成一行 
      }  
      //-->  
      </script>  
      </head>  
      <body onload="openwin()">  
      任意的页面内容...  
      </body>  
      </html>  
    
     
    
       
        
      【4、同时弹出2个窗口】  
       
       对源代码稍微改动一下:  
       
      <script LANGUAGE="JavaScript">  
      <!--  
      function openwin() {  
      window.open ("page.html", "newwindow", "height=100, width=100, top=0, left=0,toolbar=no, 
    menubar=no, scrollbars=no, resizable=no, location=n o, status=no")//写成一行  
    
      window.open ("page2.html", "newwindow2", "height=100, width=100, top=1 00, left=100,toolbar=no, 
    menubar=no, scrollbars=no, resizable=no, loca tion=no, status=no")//写成一行  
      }  
      //-->  
      </script> 
      为避免弹出的2个窗口覆盖,用top和left控制一下弹出的位置不要相互覆盖即可 。最后用上面说过的四种方法调用即可。  
      注意:2个窗口的name(newwindows和newwindow2)不要相同,或者干脆全部为空。   
       
      【5、主窗口打开文件1.htm,同时弹出小窗口page.html】  
    
      如下代码加入主窗口<head>区:  
      <script language="javascript">  
      <!--  
      function openwin() {  
      window.open("page.html","","width=200,height=200")  
      }  
      //-->  
      </script>  
      加入<body>区:  
      <a href="1.htm" onclick="openwin()">open</a>即可。  
    
       
      【6、弹出的窗口之定时关闭控制】  
       
      下面我们再对弹出的窗口进行一些控制,效果就更好了。如果我们再将一小段 代码加入弹出的页面(注意是加入page.html的HTML中,可不是主页面中,否则 ...),让它10秒后自动关闭是不是更酷了?  
    首先,将如下代码加入page.html文件的<head>区:  
      <script language="JavaScript">  
      function closeit()  
      {  
      setTimeout("self.close()",10000) //毫秒  
      }  
      </script>  
      然后,再用<body onload="closeit()"> 这一句话代替page.html中原有的<BODY>这一句就可以了。(这一句话千万不要忘记写啊!这一句的作用是调用关闭窗 口的代码,10秒钟后就自行关闭该窗口。)  
      【7、在弹出窗口中加上一个关闭按钮】  
    
      <FORM>  
      <INPUT TYPE='BUTTON' VALUE='关闭' onClick='window.close()'>  
      </FORM>  
      呵呵,现在更加完美了! 
    
      【8、内包含的弹出窗口-一个页面两个窗口】  
    
      上面的例子都包含两个窗口,一个是主窗口,另一个是弹出的小窗口。通过下面的例子,你可以在一个页面内完成上面的效果。  
    
    
      <html>  
      <head>  
      <SCRIPT LANGUAGE="JavaScript">  
      function openwin()  
      {  
      OpenWindow=window.open("", "newwin", "height=250, width=250,toolbar=no ,scrollbars="+scroll+",menubar=no");  
      //写成一行  
      OpenWindow.document.write("<TITLE>例子</TITLE>")  
      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>  
      <a href="#" onclick="openwin()">打开一个窗口</a>  
      <input type="button" onclick="openwin()" value="打开窗口">  
      </body>  
      </html>  
    
      看看OpenWindow.document.write()里面的代码不就是标准的HTML吗?只要按照 格式写更多的行即可。千万注意多一个标签或少一个标签就会出现错误。记得用 OpenWindow.document.close()结束啊。  
    
      【9、终极应用--弹出的窗口之Cookie控制】  
    
      回想一下,上面的弹出窗口虽然酷,但是有一点小毛病(沉浸在喜悦之中,一定 没有发现吧?)比如你将上面的脚本放在一个需要频繁经过的页面里(例如首页),那么每次刷新这个页面,窗口都会弹出一次,是不是非常烦人?:-( 
      有解决的办法吗?Yes! ;-) Follow me.我们使用cookie来控制一下就可以了。  
      首先,将如下代码加入主页面HTML的<HEAD>区:  
    
      <script>  
      function openwin(){  
      window.open("page.html","","width=200,height=200")  
      }  
      function get_cookie(Name) {  
      var search = Name + "="  
      var returnvalue = "";  
      if (document.cookie.length > 0) {  
      offset = document.cookie.indexOf(search)  
      if (offset != -1) {  
      offset += search.length  
      end = document.cookie.indexOf(";", offset);  
      if (end == -1)  
      end = document.cookie.length;  
      returnvalue=unescape(document.cookie.substring(offset, end))  
      }  
      }  
      return returnvalue;  
      }   
      function loadpopup(){  
      if (get_cookie('popped')==''){  
      openwin()  
      document.cookie="popped=yes"  
      }  
      }  
      </script>  
    
      然后,用<body onload="loadpopup()">(注意不是openwin而是loadpop啊!)替换主页面中原有的<BODY>这一句即可。你可以试着刷新一下这个页面或重新进 入该页面,窗口再也不会弹出了。真正的Pop-Only-Once!  
    
      写到这里弹出窗口的制作和应用技巧基本上算是完成了! 
    
    
    ------------------------------------------------------------------------------------- 
    
    
    
    【专题】window.open的例子和使用方法以及参数说明(完整版)  
    一、window.open()支持环境: java script1.0+/JScript1.0+/Nav2+/IE3+/Opera3+ 
    
    
    二、基本语法: 
    window.open(pageURL,name,parameters)  
    其中: 
    pageURL 为子窗口路径  
    name 为子窗口句柄  
    parameters 为窗口参数(各参数用逗号分隔)  
    
    
    三、示例: 
    <SCRIPT>  
    <!--  
    window.open ('page.html','newwindow','height=100,width=400,top=0,left=0,toolbar=no, 
    menubar=no,scrollbars=no, resizable=no,location=no, status=no')  
    
    //写成一行  
    -->  
    </SCRIPT> 
    脚本运行后,page.html将在新窗体newwindow中打开,宽为100,高为400,距屏顶0象素,屏左0象素,无工具条,无菜单条,无滚动条,不可调整大小,无地址栏,无状态栏。 
    请对照。 
    
    上例中涉及的为常用的几个参数,除此以外还有很多其他参数,请见四。 
    
    
    四、各项参数 
    其中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 | 窗口是否可有滚动栏  
    titlebar | yes/no | 窗口题目栏是否可见  
    toolbar | yes/no | 窗口工具栏是否可见  
    Width | pixel value | 窗口的像素宽度  
    z-look | yes/no | 窗口被激活后是否浮在其它窗口之上 
    
    
    window.showModalDialog使用手册! 
    基本介绍: 
    showModalDialog() (IE 4+ 支持) 
    showModelessDialog() (IE 5+ 支持) 
    window.showModalDialog()方法用来创建一个显示HTML内容的模态对话框。 
    window.showModelessDialog()方法用来创建一个显示HTML内容的非模态对话框。 
    
    使用方法: 
    vReturnValue = window.showModalDialog(sURL [, vArguments] [,sFeatures]) 
    vReturnValue = window.showModelessDialog(sURL [, vArguments] [,sFeatures]) 
    
    参数说明: 
    sURL-- 
    必选参数,类型:字符串。用来指定对话框要显示的文档的URL。 
    vArguments-- 
    可选参数,类型:变体。用来向对话框传递参数。传递的参数类型不限,包括数组等。对话框通过window.dialogArguments来取得传递进来的参数。 
    sFeatures-- 
    可选参数,类型:字符串。用来描述对话框的外观等信息,可以使用以下的一个或几个,用分号“;”隔开。 
    1.dialogHeight :对话框高度,不小于100px,IE4中dialogHeight 和 dialogWidth 默认的单位是em,而IE5中是px,为方便其见,在定义modal方式的对话框时,用px做单位。 
    2.dialogWidth: 对话框宽度。 
    3.dialogLeft: 离屏幕左的距离。 
    4.dialogTop: 离屏幕上的距离。 
    5.center: {yes | no | 1 | 0 }:窗口是否居中,默认yes,但仍可以指定高度和宽度。 
    6.help: {yes | no | 1 | 0 }:是否显示帮助按钮,默认yes。 
    7.resizable: {yes | no | 1 | 0 } 〔IE5+〕:是否可被改变大小。默认no。 
    8.status: {yes | no | 1 | 0 } 〔IE5+〕:是否显示状态栏。默认为yes[ Modeless]或no[Modal]。 
    9.scroll:{ yes | no | 1 | 0 | on | off }:指明对话框是否显示滚动条。默认为yes。 
    下面几个属性是用在HTA中的,在一般的网页中一般不使用。 
    10.dialogHide:{ yes | no | 1 | 0 | on | off }:在打印或者打印预览时对话框是否隐藏。默认为no。 
    11.edge:{ sunken | raised }:指明对话框的边框样式。默认为raised。 
    12.unadorned:{ yes | no | 1 | 0 | on | off }:默认为no。 
    
    参数传递: 
    1.要想对话框传递参数,是通过vArguments来进行传递的。类型不限制,对于字符串类型,最大为4096个字符。也可以传递对象,例如: 
    ------------------------------- 
    parent.htm 
    <script> 
    var obj = new Object(); 
    obj.name="51js"; 
    window.showModalDialog("modal.htm",obj,"dialogWidth=200px;dialogHeight=100px"); 
    </script> 
    modal.htm 
    <script> 
    var obj = window.dialogArguments 
    alert("您传递的参数为:" + obj.name) 
    </script> 
    ------------------------------- 
    2.可以通过window.returnValue向打开对话框的窗口返回信息,当然也可以是对象。例如: 
    ------------------------------ 
    parent.htm 
    <script> 
    str =window.showModalDialog("modal.htm",,"dialogWidth=200px;dialogHeight=100px"); 
    alert(str); 
    </script> 
    modal.htm 
    <script> 
    window.returnValue="http://www.web3.cn"; 
    </script>
     
  • 相关阅读:
    方法功能从无参方法、含参方法到重载方法
    文件目录在Visual C++ 2005中使用 GNU Scientific Library
    数据库导出All about Oracle IMP/EXP
    初始化变量明明白白c++ 初始化
    内容组织高效项目方案是如何产生的 !
    函数矩阵OpenGL中glFrustum()和gluPerspective()的相互转换
    对象数组[置顶] java高级工程师JSON和XML的使用
    资源成员函数Android应用程序资源的查找过程分析
    事件复制[wxWidgets编程系列2]_[发送异步事件的注意项之字符串深浅复制]
    查找删除Code First Entity Framework基本与最佳添加(add/create),删除(delete/remove),修改(update/modify)操作
  • 原文地址:https://www.cnblogs.com/xujian2016/p/5896238.html
Copyright © 2011-2022 走看看