kristain

博客园 首页 新随笔 联系 订阅 管理

转自:http://blog.csdn.net/fengyun111999/article/details/5384479

1、window.close在firefox不能使用

解决方法如下:
    <SCRIPT LANGUAGE="javascript"> 
        newWindow=window.open ('http://www.baidu.com', "anyname", "fullscreen=1") ;
      window.opener=null;
      window.open("","_self");
      window.close();
    </script>


    string script = "window.open('NewHtml.html', '_blank','fullscreen=1');window.opener=null;window.open('','_self');window.close(); ";



  现在解决IE,Firefox兼容问题,之所以window.close在firefox不能使用,是因为firefox默认不能关闭用户打开的网页,我们可以这样设置firefox:打开firefox,在地址栏输入about:config

找到 dom.allow_scripts_to_close_windows这项并改为true。
现在知道为什么了吧。众所周知,在javascript中window.close()是用来关闭窗口的,而且ie和firefox都是支持的。

2、最基本的弹出窗口

window.open ('page.html')

3、同时弹出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)不要相同,或者干脆全部为空。

4、主窗口打开文件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>即可。

  5、终极应用--弹出的窗口之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!

 

 

7、

window.open ("page.html", "newwindow", "height=100, width=400, toolbar= no, menubar=no, scrollbars=no, resizable=no, location=no, status=no,top=100,left=300")

  height:page.html的高度
  width:page.html的宽度
  top:page.html距离屏幕顶部的距离
  left:page.html距离屏幕左边的距离
  top和left就是给page.html设定位置的
  window.open() 方法
  语法:window.open(pageurl,name,parameters);
  window对象的open()方法用于创建一个新的窗口实例,新创建的窗口的外观由参数:parameters指定。新窗口中打开的文档由参数: pageurl指定。系统能够根据参数:name确定的名称访问该窗口。
  下表为parameters参数表:
  参数 衩始值 说明
  alwaysLowered yes/no 指定窗口隐藏在所有窗口之下。
  alwaysRaised yes/no 指定窗口浮在所有窗口之上。
  dependent yes/no 指定打开的窗口为父窗口的一个了窗口。并随父窗口的关闭而关闭。
  directions yes/no 指定Navigator 2和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 在文档中包含各个 <pplet>标签的数组。
  fullscreen yes / no 打开的窗体是否进行全屏显示
  left pixel value 设定新窗口距屏幕左方的距离
  top pixel value 设定新窗口距屏幕上方的距离
posted on 2012-10-19 16:10  kristain  阅读(822)  评论(0编辑  收藏  举报