用javascript父窗口控制只弹出一个子窗口_javascript技巧

近来网上经常流传一些关于如何在父窗口控制只弹出一个子窗口 问题我查看了一些大部分都是只能解决部分或者很麻烦还不算完美。比如有人是实现的这样使用的是Cookie以下是例子。 

主页上做了一个弹出窗口如何使其只弹出一次返回主页时不再弹出了。 

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

<script> 

window.open("http://www.yeboss.com.cn","yeboss","width=300,height=400") 

</script> 

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

cookie 

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

<HEAD> 

<SCRIPT LANGUAGE="JavaScript"> 

<!-- Begin 

var expDays = 1; // number of days the cookie should last 

var page = "only-popup-once.html"; 

var windowprops = "width=300,height=200,location=no,toolbar=no,menubar=no,scrollbars=no,resizable=yes"; 

function GetCookie (name) { 

var arg = name + "="; 

var alen = arg.length; 

var clen = document.cookie.length; 

var i = 0; 

while (i < clen) { 

var j = i + alen; 

if (document.cookie.substring(i, j) == arg) 

return getCookieVal (j); 

i = document.cookie.indexOf(" ", i) + 1; 

if (i == 0) break; 



return null; 



function SetCookie (name, value) { 

var argv = SetCookie.arguments; 

var argc = SetCookie.arguments.length; 

var expires = (argc > 2) ? argv[2] : null; 

var path = (argc > 3) ? argv[3] : null; 

var domain = (argc > 4) ? argv[4] : null; 

var secure = (argc > 5) ? argv[5] : false; 

document.cookie = name + "=" + escape (value) + 

((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + 

((path == null) ? "" : ("; path=" + path)) + 

((domain == null) ? "" : ("; domain=" + domain)) + 

((secure == true) ? "; secure" : ""); 



function DeleteCookie (name) { 

var exp = new Date(); 

exp.setTime (exp.getTime() - 1); 

var cval = GetCookie (name); 

document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString(); 



var exp = new Date(); 

exp.setTime(exp.getTime() + (expDays*24*60*60*1000)); 

function amt(){ 

var count = GetCookie(count) 

if(count == null) { 

SetCookie(count,1) 

return 1 



else { 

var newcount = parseInt(count) + 1; 

DeleteCookie(count) 

SetCookie(count,newcount,exp) 

return count 

   } 



function getCookieVal(offset) { 

var endstr = document.cookie.indexOf (";", offset); 

if (endstr == -1) 

endstr = document.cookie.length; 

return unescape(document.cookie.substring(offset, endstr)); 

function checkCount() { 

var count = GetCookie(count); 

if (count == null) { 

count=1; 

SetCookie(count, count, exp); 

window.open(page, "", windowprops); 



else { 

count++; 

SetCookie(count, count, exp); 

   } 



//  End --> 

</script> 

<BODY OnLoad="checkCount()"> 

这个是网上随便摘的一个例子是不是感觉很多也很难看懂呢下面我给大家说一种新方法保证好看好使。

<script language="JavaScript" type="text/JavaScript">

<!--  Copyright fenggang at 2007/3/23

var w=null;

function MM_openBrWindow(theURL,winName,features) { //v2.0

  if(w!=undefined&&isOpen()){

   w.close();

  }

   w=window.open("",winName,features);

   w.location.replace(theURL);

}

function isOpen()

{

  try

  {

  w.document;

  return true;

  }

  catch(ex)

  {}

  return false;

}

//-->

</script>

这个MM_openBrWindow函数名是在Dreamweaver中常用的弹出窗口函数名将这段代码放进页面里

然后再做弹出窗口就只能探出一个窗口了以上是精髓部分下面是完整的一个测试页的代码试试看吧。

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>

<!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>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

<title>无标题文档</title>

<script language="JavaScript" type="text/JavaScript">

<!--  Copyright fenggang at 2007/3/23

var w=null;

function MM_openBrWindow(theURL,winName,features) { //v2.0

  if(w!=undefined&&isOpen()){

   w.close();

  }

   w=window.open("",winName,features);

   w.location.replace(theURL);

}

function isOpen()

{

  try

  {

  w.document;

  return true;

  }

  catch(ex)

  {}

  return false;

}

//-->

</script>

</head>

<body>

<a href="javascript:;" onClick="MM_openBrWindow(show.asp,,scrollbars=yes,resizable=yes,width=570,height=500)">title</a>

</body>

</html>

时间: 2024-10-07 22:01:17

用javascript父窗口控制只弹出一个子窗口_javascript技巧的相关文章

JavaScript基础教程之alert弹出提示框实例_javascript技巧

alert 命令弹出一个提示框 为便于对 JavaScript 有一个直观的认识,本节会提供几个简单的实例供 JavaScript 入门学习之用.下面的代码是一个弹出提示框的例子: 复制代码 代码如下: <script type="text/javascript"> alert("我是提示文字!"); </script> 将上面部分代码,用文本编辑器(如写字板或其他更高级的编辑器,如 EditPlus 等)保存为 alert.html(或 a

利用javaScript实现点击输入框弹出窗体选择信息_javascript技巧

在这里奉上源代码,没有做样式处理,不过功能是可以的,希望大家可以和我交流交流! 复制代码 代码如下: <html> <head>  <title>点击弹出DIV选择信息</title>     <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">     <meta http-equiv="description&

JavaScript写的一个自定义弹出式对话框代码_javascript技巧

下图是我的设计思路 下面是具体的js代码 1,首先定义几个自定义函数 代码 复制代码 代码如下: //判断是否为数组 function isArray(v) { return v && typeof v.length == 'number' && typeof v.splice == 'function'; } //创建元素 function createEle(tagName) { return document.createElement(tagName); } //在

javascript自定义右键弹出菜单实现方法_javascript技巧

本文实例讲述了javascript自定义右键弹出菜单实现方法.分享给大家供大家参考.具体实现方法如下: <head runat="server"> <title>无标题页</title> <script type="text/javascript"> var oPopup = window.createPopup(); function PopMenu(id) { var oPopBody = oPopup.docum

怎么让子窗口1内弹出的子窗口2显示在父窗口内

问题描述 如题..当我点击子窗口1的快捷菜单时弹出子窗口2,但只有子窗口1是在父窗口里面的,子窗口2是在父窗口外怎么才能实现让子窗口2也出现在父窗口内呢? 解决方案 解决方案二: 用mdi子窗口或者setparentapi解决方案三: 子窗口1和父窗口就是MDI的啊但是从子窗口1弹出来的子窗口2是显示在父窗口外面的不知道怎么让子窗口2显示在父窗口里面解决方案四: 引用1楼caozhy的回复: 用mdi子窗口或者setparentapi 子窗口1和父窗口就是MDI的啊但是从子窗口1弹出来的子窗口2

JavaScript动态修改弹出窗口大小的方法_javascript技巧

本文实例讲述了JavaScript动态修改弹出窗口大小的方法.分享给大家供大家参考.具体如下: 下面的JS代码演示了如何通过window.open弹出一个新的窗口,然后动态修改窗口大小 <!DOCTYPE html> <html> <head> <script> var w; function openwindow() { w=window.open('','', 'width=100,height=100'); w.focus(); } function

javascript实现类似于新浪微博搜索框弹出效果的方法_javascript技巧

本文实例讲述了javascript实现类似于新浪微博搜索框弹出效果的方法.分享给大家供大家参考.具体实现方法如下: <!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

javascript简单实现类似QQ头像弹出效果的方法_javascript技巧

本文实例讲述了javascript简单实现类似QQ头像弹出效果的方法.分享给大家供大家参考.具体实现方法如下: <!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&q

js弹出对话框方式小结_javascript技巧

本文实例总结了js弹出对话框方式.分享给大家供大家参考,具体如下: 一般常用的是 alert prompt confirm三种对话框 示例1: <html> <head> <title>Example 简单对话框</title> </head> <body> <script type="text/JavaScript"> <!-- alert("Good Morning!");