无边框窗口代码详解_JSP编程

/*代码思路
此代码会以fullscreen方式打开一个空白窗口,然后用window.resize改变其大小。
最后在以写入onload="location.replace='url'"的办法将网址改变。
打开的窗口会是一个带有FRAME的窗口,其中窗口顶端会有一个高22的框架网页。
此网页是用来操纵窗口移动及关闭。
*/

/*说明
代码分两个部分,但总共牵涉到5个HTML文件及4个图像文件
第一部分是用来打开窗口,放在哪个文件都无所谓。
第二部分是用来控制窗口的移动及关闭,必须放在指定的文件里。
在此代码里,5个html文件分别为:
1.html; 代码第一部分所在
load.html; 所打开的窗口,是一个框架网页
chromelesstit.html;代码第2部分所在
contacting.html;用来显示如'PAGE LOADING.."等临时信息的网页
main.html;真正的主网页
4个图像分别为
x_a.gif; active
x_d.gif; mouseDown
x_o.gif; mouseOver
以上三个文件分别代表关闭窗口图标的不同状态
none.gif; 用来遮盖chromelesstit.html
*/

/*使用方法
如果你想让一个文件,如1.html,中的某一个连接打开一个指像main.html的无边框窗口。
把代码第一部分放到该文件中。
然后将连接
<a herf="main.html">
改为
<a herf="#" onclick="doOpen()">
在该文件所在目录内
1.建立
chromelesstit.html;
contacting.html;
load.html;
等三个文件,其HTML代码见本文所附。(不要做任何修改)
2.建立
一个名为images的目录(注意大小写,与有则不用),将
http//lain.oso.com.cn/x_a.gif;
http//lain.oso.com.cn/x_d.gif;
http//lain.oso.com.cn/x_o.gif;
http//lain.oso.com.cn/none.gif;
这4个文件拷入改目录.
对于初学者,以上则足够了。如果想要更好的效果,自己改代码。
*/
<!--//代码第一部分。
function doOpen(){
theurl="main.html";
wname ="name";
w=750;
h=400;
/* 参数说明:
theurl="main.html"; 打开窗口的网址
wname ="name"; 打开窗口的name属性
w=750; 打开窗口的宽度
h=400; 打开窗口的高度
*/
open(theurl, wname, w, h);
};
function open(theURL, wname, W, H) {
var windowW = W;//确定网页的宽度
var windowH = H;//确定网页的高度
var windowX = Math.ceil( (window.screen.width - windowW) / 2 );
var windowY = Math.ceil( (window.screen.height - windowH) / 2 );//确定网页的坐标

if (navigator.appName == "Microsoft Internet Explorer" && parseInt(navigator.appVersion)>=4) isie=true; else isie=false;
s = ",width="+W+",height="+H;
if (isie===false){//加入对Nescape系列浏览器的支持
splashWin = window.open( "main.html" , wname, "fullscreen=1,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0"+s)
splashWin.resizeTo( Math.ceil( W )    , Math.ceil( H ) )
splashWin.moveTo ( Math.ceil( windowX ) , Math.ceil( windowY ) )
}else{
splashWin = window.open( "" , wname, "fullscreen=1,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0"+s)
splashWin.resizeTo( Math.ceil( W )    , Math.ceil( H ) )
splashWin.moveTo ( Math.ceil( windowX ) , Math.ceil( windowY ) )
splashWin.document.open("text/html", "replace");
splashWin.document.write("<html><style type='text/css'>\n");
splashWin.document.write("body{border: 1px solid #000000; overflow: hidden; margin: 0pt;}");
splashWin.document.write("#stillloadingDiv {position: absolute; left: 0px; top: 0px; width: 100%px; height: 19px; z-index: 1; background-color: #C0C0C0; layer-background-color: #C0C0C0; clip:rect(0,100%,19,0);}");
splashWin.document.write("</style>\n");
splashWin.document.write("<body onload=\"top.document.location.replace('load.html")\" TOPMARGIN=0 LEFTMARGIN=0 MARGINWIDTH=0 MARGINHEIGHT=0 scroll='no'>");
splashWin.document.write("<div id=stillloadingDiv><table width=100% height=22 cellspacing=0 cellpadding=0><tr><td align=left valign=middle width=100%><FONT size=1 face=verdana color=#000000>  System energizing ...</font></td></tr></table></div>");
splashWin.document.write("</body></html>");
splashWin.document.close();
}
splashWin.focus();//代码第一部分完
}//-->

chromelesstit.html 文件代码

<html><head>
<meta http-equiv=Content-Type content=text/html;charset=windows-1252>
<style type=text/css>
#mywindowTITLE { position: absolute; left: 0px; top: 0px; width: 100%; height: 22px; z-index: 1; background-color: #ffffff; clip:rect(0,100%,22,0); }
#mywindow { position: absolute; left: 0px; top: 0px; width: 100%; height: 22px; z-index: 2; clip:rect(0,100%;22,0); }
#mywindowCLOSE { position: absolute; left: -22px; top: -22px; width: 11px; height: 11px; z-index: 3; clip:rect(0,11,11,0); }
</style>
<script language=javascript type=text/javascript>
// Chromeless window v1.1 (TITLE)
//////////////////////////////////////////////////////////////// Title bar control //////

var isinit   = false;
var mywindowok = true;

theURL="main.html"
windowCERRARa = "images/x_a.gif"
windowCERRARd = "images/x_d.gif"
windowCERRARo = "images/x_o.gif"
windowTIT    = "<font face=Arial size=1>Title</font>"
windowBORDERCOLOR  = "#000000"
windowBORDERCOLORsel = "#FF8A00"
windowTITBGCOLOR   = "#d7dcd9"
windowTITBGCOLORsel = "#ffffff"

var windowCERRARImg_a = new Image(); windowCERRARImg_a.src=windowCERRARa;
var windowCERRARImg_d = new Image(); windowCERRARImg_d.src=windowCERRARd;
var windowCERRARImg_o = new Image(); windowCERRARImg_o.src=windowCERRARo;

function whaitborders(){
if ( parent.chromewinb && parent.chromewinl && parent.chromewinr ){
parent.chromewinb.document.bgColor=windowBORDERCOLOR
parent.chromewinl.document.bgColor=windowBORDERCOLOR
parent.chromewinr.document.bgColor=windowBORDERCOLOR
}else{
setTimeout('whaitborders()', 100);
}
}
whaitborders()

//////////////////////////////////////////////////////////////// MOUSE MOVE //////

function mouseSTATUS(){
this.x    = null;
this.y    = null;
this.bt   = "up";
this.oldx  = null;
this.oldy  = null;
this.dx   = null;
this.dy   = null;
this.screeny = null;
this.screenx = null;

this.element = null;
this.event  = null;
}

var mouse = new mouseSTATUS();

function actualizateMouseSTATUS(e){
if (!e) var e = event
if ( (e.type=="mousedown" || e.type=="mouseup") && e.button!=1) return true

var x=e.x+document.body.scrollLeft
var y=e.y+document.body.scrollTop

mouse.x  = x;
mouse.y  = y;

   if ( e.type == "mousedown" ) mouse.bt = "down";
else if ( e.type == "mouseup" )  mouse.bt = "up";

if (window.event){
mouse.screenx=window.event.screenX;
mouse.screeny=window.event.screenY;
}else{
mouse.screenx=-1;
mouse.screeny=-1;
}

}

function initMouseEvents(){
document.onmousedown = actualizateMouseSTATUS
document.onmousemove = actualizateMouseSTATUS
document.onmouseup  = actualizateMouseSTATUS
document.onselectstart = selectstart
document.ondragstart  = new Function("actualizateMouseSTATUS(event); return false;")
}

function selectstart(){
if ( event.srcElement.tagName != "INPUT" && event.srcElement.tagName != "TEXTAREA"){return false;}
else{mouse.bt="up"; return true;}
}

initMouseEvents()

//////////////////////////////////////////////////////////////// WINDOW DRAG //////

var mywindowbt  ="up";
var wincloseSTATUS="up";

var ofx=0;
var ofy=0;
var opx=0;
var opy=0;
var px=0;
var py=0;

var wcpx1=-1, wcpy1=-1;
var wcpx2=-1, wcpy2=-1;

var wclosechanged = false;

function initToMoveWin(){
if (mywindowok){
if (wincloseSTATUS=="up" && ( mywindowbt=="up" || mywindowbt=="over") ){
if (isinit){
wcpx1 = document.all["mywindowCLOSE"].style.pixelLeft=document.body.clientWidth-18
wcpy1 = document.all["mywindowCLOSE"].style.pixelTop =4
wcpx2 = wcpx1 + 11 - 1
wcpy2 = wcpy1 + 11 - 1
if ( mouse.x >= wcpx1 && mouse.x <= wcpx2 && mouse.y >= wcpy1 && mouse.y <= wcpy2){
if (wclosechanged == false){
document.all["mywindowCLOSE"].document.images["closewin"].src=windowCERRARImg_o.src
wclosechanged = true
}

}else if (wclosechanged == true){
document.all["mywindowCLOSE"].document.images["closewin"].src=windowCERRARImg_d.src
wclosechanged = false
}
}
}

   if (  mouse.y <= 22 && mouse.y >= 1  && mywindowbt == "up"  && mouse.bt =="up"  ){mywindowbt = "over"}
else if ( ( mouse.y > 22 || mouse.y < 1 ) && mywindowbt == "over" && mouse.bt =="up"  ){mywindowbt = "up"}
else if (  mouse.y <= 22 && mouse.y >= 1  && mywindowbt == "over" && mouse.bt == "down" ){
self.window.focus();

if ( mouse.x >= wcpx1 && mouse.x <= wcpx2 && mouse.y >= wcpy1 && mouse.y <= wcpy2 ){
wincloseSTATUS="down"
document.all["mywindowCLOSE"].document.images["closewin"].src=windowCERRARImg_a.src
}else{
document.all["mywindowTITLE"].style.backgroundColor = windowTITBGCOLORsel
document.body.style.borderColor = windowBORDERCOLORsel
parent.chromewinb.document.bgColor=windowBORDERCOLORsel
parent.chromewinl.document.bgColor=windowBORDERCOLORsel
parent.chromewinr.document.bgColor=windowBORDERCOLORsel
ofx = mouse.x;
ofy = mouse.y;
opx = mouse.x;
opy = mouse.y;
}
mywindowbt="down";
}
else if ( mouse.bt =="up" && mywindowbt == "down" ){
mywindowbt="up";
ofx=0;
ofy=0;
opx=0;
opy=0;

if ( mouse.x >= wcpx1 && mouse.x <= wcpx2 && mouse.y >= wcpy1 && mouse.y <= wcpy2 && wincloseSTATUS=="down" ){top.window.close()}

wincloseSTATUS="up"

if ( document.all["mywindowTITLE"] ){
document.all["mywindowTITLE"].style.backgroundColor = windowTITBGCOLOR
document.body.style.borderColor = windowBORDERCOLOR
parent.chromewinb.document.bgColor=windowBORDERCOLOR
parent.chromewinl.document.bgColor=windowBORDERCOLOR
parent.chromewinr.document.bgColor=windowBORDERCOLOR
}

}
else if ( mywindowbt == "down" && wincloseSTATUS == "up"){
var m_scrx = mouse.screenx;
var m_scry = mouse.screeny;
opx = px + ofx - m_scrx;
opy = py + ofy - m_scry;
px = m_scrx - ofx;
py = m_scry - ofy;
top.window.moveTo(px , py);
}
}
setTimeout('initToMoveWin()',20);
}
initToMoveWin()

//////////////////////////////////////////////////////////////// WRITE TITLE //////

function init(){
document.all["mywindowTITLE"].innerHTML='<table width=100% height=20 border=0 cellpadding=0 cellspacing=0><tr><td valign=middle align=left>'+windowTIT+'</td></tr></table>'
document.all["mywindowTITLE"].style.backgroundColor = windowTITBGCOLOR
document.all["mywindowCLOSE"].document.images["closewin"].src=windowCERRARImg_d.src

setTimeout('parent.main.location.replace("'+theURL+'")',200)

isinit=true
}

</script></head>
<body onload=init() TOPMARGIN=0 LEFTMARGIN=0 MARGINWIDTH=0 MARGINHEIGHT=0 scroll=no style="border:1px solid #000000;overflow:hidden;margin:0pt;" bgcolor=#ffffff>
<div id=mywindow>
<img src=images/none.gif width=100% height=20>
</div>
<div id=mywindowTITLE>
<img width=1 height=1>
</div>
<div id=mywindowCLOSE>
<img name=closewin src=images/none.gif border=0 width=11 height=11>
</div>
</body>
</html>

contacting.html 文件代码

<html>
<head>
<style type='text/css'>
body       { border: 0px; overflow: hidden; margin: 0pt;}
#stillloadingDiv { position: absolute; left: 0px; top: 0px; width: 100%; height: 19px; z-index: 1; background-color: #C0C0C0; layer-background-color: #C0C0C0; clip:rect(0,100%,19,0);}
</style>
</head>
<body TOPMARGIN=0 LEFTMARGIN=0 MARGINWIDTH=0 MARGINHEIGHT=0 scroll='no'>
<div id=stillloadingDiv><table width=100% height=22 cellspacing=0 cellpadding=0><tr><td align=left valign=middle width=100%><FONT size=1 face=verdana color=#000000>  loading, please wait. . .</font></td></tr></table></div>
</body>
</html>

laod.html 文件代码

<HTML>
<HEAD>
<TITLE>OF KAI</TITLE>
</HEAD>
<frameset border=0 framespacing=0 frameborder=0 rows="22,100%,1">
<frame name=chromewint src="chromelesstit.html" scrolling=no noresize>
<frameset border=0 framespacing=0 frameborder=0 cols="1,100%,1">
<frame name=chromewinl src="about:blank" scrolling=no noresize>
<frame name=main src="contacting.html" scrolling="no" noresize>
<frame name=chromewinr src="about:blank" scrolling=no noresize>
</frameset>
<frame name=chromewinb src="about:blank" scrolling=no noresize>
  <noframes>
  </noframes>
</frameset>
<frameset>
</frameset>
</HTML>

【本文版权归作者与奥索网共同拥有,如需转载,请注明作者及出处】    

时间: 2024-10-21 23:22:24

无边框窗口代码详解_JSP编程的相关文章

无边框窗口代码详解

/*代码思路 此代码会以fullscreen方式打开一个空白窗口,然后用window.resize改变其大小. 最后在以写入onload="location.replace='url'"的办法将网址改变. 打开的窗口会是一个带有FRAME的窗口,其中窗口顶端会有一个高22的框架网页. 此网页是用来操纵窗口移动及关闭. */ /*说明 代码分两个部分,但总共牵涉到5个HTML文件及4个图像文件 第一部分是用来打开窗口,放在哪个文件都无所谓. 第二部分是用来控制窗口的移动及关闭,必须放在指

五种形式的网页弹出窗口代码详解

弹出窗口|网页|详解 1.弹启一个全屏窗口 <html> <body http://www.webjx.com','example01','fullscreen'/">http://www.webjx.com','example01','fullscreen');"> <b>www.webjx.com</b> </body> </html> 运行代码复制代码另存代码 --您可以运行代码察看特效,您也可以复制或

JSP使用Servlet作为控制器实现MVC模式实例详解_JSP编程

本文实例讲述了JSP使用Servlet作为控制器实现MVC模式的方法.分享给大家供大家参考.具体如下: 一.目标: ① 初步理解MVC模式: ② 掌握Servlet的编写: ③ 使用MVC模式完成登录功能. 二.主要内容: ① 分析JSP+JavaBean模式存在的问题,并介绍JSP+JavaBean+Servlet模式,以及和MVC模式的关系: ② 通过简单实例介绍Servlet的编写.配置和运行: ③ 采用Servlet完成登录功能的控制. 1. JSP+JavaBean这种模式存在的问题?

JSP使用MVC模式完成删除和修改功能实例详解_JSP编程

本文实例讲述了JSP使用MVC模式完成删除和修改功能的方法.分享给大家供大家参考.具体如下: 目标: ① 进一步理解MVC模式: ② 掌握删除功能的基本实现过程: ③ 掌握修改功能的基本实现过程. 主要内容: ① 使用MVC完成删除功能: ② 使用MVC模式完成信息更新功能. 1.如何使用MVC模式完成删除功能 根据MVC模式的特点,分别考虑MVC的3个部分. ① 首先考虑V部分: 输入:通常删除功能是在查询的基础上完成的,所以在用户信息列表界面上可以添加删除的超链. 输出:提示用户删除是否成功

jsp自定义标签用法实例详解_JSP编程

本文实例讲述了jsp自定义标签用法.分享给大家供大家参考.具体如下: 在JSP中有一种机制,可以让你在JSP页面中插入与HTML类似的标记.本文介绍JSP定制标记的基本概念和构成,以及如何开发和应用JSP定制标记. 什么是标记 使用HTML语言我们可以这样去编辑我们的网页: <HTML> <HEAD> <TITLE> HELLO WORLD </TITLE> </HEAD> <BODY> HELLO WORLD </BODY&g

Spring MVC 框架搭建配置方法及详解_JSP编程

现在主流的Web MVC框架除了Struts这个主力 外,其次就是Spring MVC了,因此这也是作为一名程序员需要掌握的主流框架,框架选择多了,应对多变的需求和业务时,可实行的方案自然就多了.不过要想灵活运用Spring MVC来应对大多数的Web开发,就必须要掌握它的配置及原理. 一.Spring MVC环境搭建:(Spring 2.5.6 + Hibernate 3.2.0) 1. jar包引入 Spring 2.5.6:spring.jar.spring-webmvc.jar.comm

JSP中图片的上传与显示方法实例详解_JSP编程

本文实例讲述了JSP中图片的上传与显示方法.分享给大家供大家参考.具体如下: 1.引言 数据库应用程序,特别是基于WEB的数据库应用程序,常会涉及到图片信息的存储和显示.通常我们使用的方法是将所要显示的图片存在特定的目录下,在数据库中保存相应的图片的名称,在JSP中建立相应的数据源,利用数据库访问技术处理图片信息.但是,如果我们想动态的显示图片,上述方法就不能满足需要了.我们必须把图片存入数据库,然后通过编程动态地显示我们需要的图片.实际操作中,可以利用JSP的编程模式来实现图片的数据库存储和显

jsp中page指令用法详解_JSP编程

本文实例讲述了jsp中page指令用法.分享给大家供大家参考.具体如下: 一.JSP 指令 JSP 指令(directive)影响由 JSP 页面生成的 servlet 的整体结构.下面的模板给出指令的两种可能形式.属性值两边的双引号可以替换为单引号,但引号标记不能完全省略.如果要在属性值中使用引号,则要在它们之前添加反斜杠,' 使用 \'," 使用 \" <% directive attribute="value" %> <% directive

jsp中自定义Taglib详解_JSP编程

一.自定义标签入门之无参数自定义标签 1.开发自定义标签类 当我们在JSP页面使用一个简单的标签时,底层实际上由标签处理类提供支持,从而可以使用简单的标签来封装复杂的功能,从而使团队更好地协作开发(能让美工人员更好地参与JSP页面的开发). 自定义标签类都必须继承一个父类:javax.servlet.jsp.tagext.SimpleTagSupport,或者TagSupport除此之外,JSP自定义标签类还有如下要求. 如果标签类包含属性,每个属性都有对应的getter和setter方法. 重