Cooike를 한 번만 열 수 있는 페이지

3345 단어
최근에 웹IM을 하고 있는데 OA시스템에 삽입되어 있습니다. WEBIM은 독립된 페이지에 있기 때문에 여러 번 클릭하면 여러 페이지가 나타납니다.IE6에서 서버 전송은 페이지를 알아보지 못합니다.그래서 다음 코드가 생겼습니다.
 
  
<br>window.onload = function () { <br>if (GetCookie("IsOpen") == "") { <br>SetCookie("IsOpen", "1"); <br>StartService(); <br>} else { <br>window.onunload = null; <br>window.opener = null; <br>window.open("", "_self"); <br>window.close(); <br>} <br>} window.onunload = function () { <br>if (GetCookie("IsOpen") != "") <br>DeleteCookie("IsOpen"); <br>} <br>function GetCookieVal(offset) { <br>/// <summary> <br>/// // offset cookie <br>/// </summary> <br>/// <param name="name">Cookie </param> <br>var endstr = document.cookie.indexOf(";", offset); <br>if (endstr == -1) <br>endstr = document.cookie.length; <br>return unescape(document.cookie.substring(offset, endstr)); <br>} <br>function GetCookie(name) { <br>/// <summary> <br>/// Cookie <br>/// </summary> <br>/// <param name="name">Cookie </param> <br>var arg = name + "="; <br>var alen = arg.length; <br>var clen = document.cookie.length; <br>var i = 0; <br>while (i < clen) { <br>var j = i + alen; <br>if (document.cookie.substring(i, j) == arg) <br>return GetCookieVal(j); <br>i = document.cookie.indexOf(" ", i) + 1; <br>if (i == 0) break; <br>} <br>return ""; <br>} <br>function SetCookie(name, value) { <br>/// <summary> <br>/// Cookie <br>/// </summary> <br>/// <param name="name">Cookie </param> <br>/// <param name="value">Cookie </param> <br>var argc = SetCookie.arguments.length; <br>var argv = SetCookie.arguments; <br>var path = (argc > 3) ? argv[3] : null; <br>var domain = (argc > 4) ? argv[4] : null; <br>var secure = (argc > 5) ? argv[5] : false; <br>document.cookie = name + "=" + value + <br>((path == null) ? "" : ("; path=" + path)) + <br>((domain == null) ? "" : ("; domain=" + domain)) + <br>((secure == true) ? "; secure" : ""); <br>} <br>function DeleteCookie(name) { <br>/// <summary> <br>/// Cookie <br>/// </summary> <br>/// <param name="name">Cookie </param> <br>var exp = new Date(); <br>exp.setTime(exp.getTime() - 1); <br>var cval = GetCookie(name); <br>document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString(); <br>} <br>

위의 코드를 헤드 밑에 놓으면 됩니다.허허, 간단하죠?물론 위의 코드는 하이퍼링크로 열린 페이지를 주로 해결하는데, 만약 window라면.오픈에서 열린 페이지는 더욱 간단합니다. 코드는 다음과 같습니다.
 
  
var win = null;//
if (win == null)
{
win=window.open("Main.aspx", '', strfeatures);
}

좋은 웹페이지 즐겨찾기