这两天在腾讯的修改那一块 觉得挺好看 刚好朋友让我给他做
开始的时候不知道这是什么东西 师父说 那是模式窗口
网上找了一些资料 然后自己开始做
已完成:
JavaScript代码如下:
function $(_sId)
{return document.getElementById(_sId);}
function moveDiv(event, _sId)
{
var oObj = $(_sId);
oObj.onmousemove = mousemove;
oObj.onmouseup = mouseup;
oObj.setCapture ? oObj.setCapture() : function(){};
oEvent = window.event ? window.event : event;
var dragData = {x : oEvent.clientX, y : oEvent.clientY};
var backData = {x : parseInt(oObj.style.top), y : parseInt(oObj.style.left)};
function mousemove()
{
var oEvent = window.event ? window.event : event;
var iLeft = oEvent.clientX - dragData["x"] + parseInt(oObj.style.left);
var iTop = oEvent.clientY - dragData["y"] + parseInt(oObj.style.top);
oObj.style.left = iLeft;
oObj.style.top = iTop;
dragData = {x: oEvent.clientX, y: oEvent.clientY};
}
function mouseup()
{
var oEvent = window.event ? window.event : event;
oObj.onmousemove = null;
oObj.onmouseup = null;
if(oEvent.clientX < 1 || oEvent.clientY < 1)
{
oObj.style.left = backData.y;
oObj.style.top = backData.x;
}
oObj.releaseCapture ? oObj.releaseCapture() : function(){};
}
}
function closeDiv(_sID)
{
/* var oObj = $(_sID);
var overlay = $("overlay");
if(overlay != null)
{
overlay.outerHTML = "";
}
oObj.style.display = "none";*/
var oObj = document.getElementById(_sID);
var overlay = document.getElementById("overlay");
if(overlay!=null){
overlay.outerHTML = "";
}
oObj.style.display = "none";
}
function showDiv(_sID,event)
{
var arrySize = getPageSize();
var oObj = $(_sID);
//创建一个DIV,改名为 overlay 这个是透明的层
var oDiv =document.createElement("div");
oDiv.id = "overlay";
document.body.appendChild(oDiv);
var overlay = $("overlay");
overlay.style.height = arrySize[1];
overlay.style.width = arrySize[0];
//alert(arrySize[1]);
if(event == null)
{
if(oObj.style.left == "")
{
oObj.style.left = arrySize[0] / 2 - 150 ;
}
if(oObj.style.top == "")
{
oObj.style.top = arrySize[0] / 2;
}
}
else
{
var iEvent= window.event ? window.event : event;
oObj.style.left = arrySize[0] / 2 - 150 ; // iEvent.clientX;
oObj.style.top = arrySize[1] / 2 - 150 ;// iEvent.clientY;
}
oObj.style.display = "block";
overlay.style.display = "block";
overlay.style.zindex = oObj.style.zindex - 1;
}
//取得页面大小
function getPageSize(){
var xScroll, yScroll;
if (window.innerHeight && window.scrollMaxY) {
xScroll = document.body.scrollWidth;
yScroll = window.innerHeight + window.scrollMaxY;
} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
xScroll = document.body.scrollWidth;
yScroll = document.body.scrollHeight;
} else { // Explorer Macwould also work in Explorer 6 Strict, Mozilla and Safari
xScroll = document.body.offsetWidth;
yScroll = document.body.offsetHeight;
}
var windowWidth, windowHeight;
if (self.innerHeight) { // all except Explorer
windowWidth = self.innerWidth;
windowHeight = self.innerHeight;
} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
windowWidth = document.documentElement.clientWidth;
windowHeight = document.documentElement.clientHeight;
} else if (document.body) { // other Explorers
windowWidth = document.body.clientWidth;
windowHeight = document.body.clientHeight;
}
// for small pages with total height less then height of the viewport
if(yScroll < windowHeight){
pageHeight = windowHeight;
} else {
pageHeight = yScroll;
}
// for small pages with total width less then width of the viewport
if(xScroll < windowWidth){
pageWidth = windowWidth;
} else {
pageWidth = xScroll;
}
arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight)
return arrayPageSize;
}
CSS样式如下:
@CHARSET "UTF-8";
img{
border:0px;
}
#overlay{
position: absolute;
top: 0;
left: 0;
z-index: 99;
width: 100%;
height: 500px;
background-color: #000;
filter:alpha(opacity=70);
-moz-opacity: 0.6;
opacity: 0.6;
}
.floatDiv{
padding:0 0 0 0;
position:absolute;
width:300px;
margin:0 0 0 0;
z-index:100;
border:1px solid #DADADA;
background:#FFF; padding:1px;
}
.floatDiv .divTitle{
background:#E0E0E0 url('../images/dragForm/title_bg.gif');
background-position:top left;
background-repeat:repeat-x;
height:25px;
line-height:25px;
padding:0px 4px;
cursor:default;
}
.floatDiv .divContent{
padding:3px;
min-height:100px;
height:auto; cursor:default;
}
.floatDiv .divFoot{
background:#F0F0F0;
text-align:right;
padding:4px;
background:#E0E0E0 url('../images/dragForm/bottom_bg.gif');
background-position:top left;
background-repeat:repeat-x;
}
.floatDiv input.divButton{
background:#E0E0E0 url('../images/dragForm/button_bg.gif');
background-position:top left;
background-repeat:repeat-x;
border:1px solid #D1D3D2;
height:21px;
font-size:12px;
padding:2px 5px;
color:#626264;
}
jsp代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题 1</title>
<link href="./Css.css" rel="stylesheet" media="all" />
<script type="text/javascript" src="./javascript.js"></script>
</head>
<body>
<div id="main">
<a href="javascript:showDiv('floatDiv');">show</a>
<input type="button" onclick="showDiv('floatDiv',event);" value="显示在这里" />
</div>
<div id="floatDiv" class="floatDiv" style="display:none;">
<div class="divTitle" onmousedown="moveDiv(event,'floatDiv');">
<div style="float:left; width:250px;">提示窗口</div>
<div style="float:right;text-align:right; height:25px;" >
<a href="javascript:;" onclick="closeDiv('floatdiv');"><img src="images/dragform/ico_close.gif" onmouseout="this.src='images/dragform/ico_close.gif';" onmousemove="this.src='images/dragform/ico_close1.gif';" align="absmiddle" alt="关闭" /></a>
</div>
</div>
<div class="divContent" >
<p>根据系统设置,修改密码前必须通过安全验证
</p>
<form action="">
<table>
<tr>
<td>你父亲的名字是什么?</td>
<td><input type="text" name="answer"/></td>
</tr>
</table>
<div class="divFoot">
<input type="submit" class="divButton" value="确 定" /><input type="button" class="divButton" onclick="closeDiv('floatdiv')" value="取 消" />
</div>
</form>
</div>
</div>
</body>
</html>
《测试已通过,在火狐里面效果不是很好,在IE8中,可以很好的看到效果》
分享到:
相关推荐
以上就是使用HTML和JavaScript实现模式窗口以及蒙板对话框的基本方法,通过这种方式,你可以创建出具有交互性和实用性的网页功能。在实际项目中,你可能还需要考虑更多细节,如键盘导航、触屏设备的支持以及对不同...
以上就是使用JavaScript实现模式窗口涉及的主要知识点,这些技能是现代Web开发中的基础,理解并熟练运用它们能帮助你构建更高效、更健壮的用户界面。在实际编程中,你可能还需要考虑兼容性、性能优化、错误处理等...
在Web开发中,使用JavaScript可以轻松地实现模式窗口与父窗口之间的通信。通过`window.opener`对象,子窗口(即模式窗口)可以访问并操作打开它的父窗口(即主窗口)。在提供的代码片段中,`Page.ClientScript....
该插件利用了jQuery的这些特性来实现模式窗口的功能。 ### 模式窗口(Modal Window) 模式窗口通常用于弹出需要用户注意或者需要用户交互的情况,如登录对话框、警告提示或表单提交。这种窗口会在页面的其余部分上...
2. `div`模式窗口的实现: `div`模式窗口是指利用`div`元素创建的可交互或可弹出的窗口效果。这通常通过JavaScript或者jQuery等库来实现动态效果,如点击按钮后弹出一个包含特定内容的`div`窗口。这个窗口可以是...
在网页设计中,模态窗口(Modal Window)是一种常见的用户交互设计模式,它可以在不离开当前页面的情况下显示新的内容或进行交互操作。JQuery,一个轻量级、高性能的JavaScript库,提供了简单易用的API来实现这种...
通过以上讲解,你应该能够理解如何使用JavaScript实现全屏窗口功能,并解决可能出现的问题。在实际项目中,可以结合HTML和CSS来优化全屏效果,提供更加沉浸式的用户体验。如果你的项目中包含名为“全屏窗口.html”的...
本篇文章将详细讲解如何利用jQuery实现一个美观的“模式窗口”(Modal Window)并结合选项卡功能,为用户提供优秀的体验。 一、jQuery模式窗口(Modal Window) 模式窗口是一种在用户进行特定操作时弹出的覆盖整个...
以上就是使用JavaScript实现自定义浏览器窗口功能的主要技术点。通过结合这些技术,开发者可以创建具有高度交互性和个性化体验的前端应用。当然,实际应用中还需要考虑浏览器兼容性、用户体验优化等问题,这需要对...
本文实例讲述了JavaScript实现提交模式窗口后刷新父窗口数据的方法。分享给大家供大家参考,具体如下: 有些时间,按需求设计,一个窗口中,点击按扭,弹出模式窗口,在模式窗口中,添加完数据后(提交),关闭模式...
### jQuery实现模式窗口登录 #### 知识点概述 本文将详细介绍如何利用jQuery库来创建一个弹出式登录对话框,这种登录对话框通常被称为模态窗口。此方法适用于Internet Explorer(IE)和Firefox浏览器,并且可以很...
综上所述,"js弹出层暂停实现模式窗口效果"涉及到HTML布局、CSS样式、JavaScript交互、动画效果、可访问性和响应式设计等多个方面。通过合理地组合这些技术,可以创建出功能完备且用户体验良好的弹出层效果。在实际...
本文将深入讲解如何利用JavaScript实现弹出子窗口,并将子窗口中的数据传递回父窗口。 首先,我们来看父窗口的代码。在给定的`First.html`文件中,我们定义了一个名为`ShowDialog`的JavaScript函数,用于打开一个...
这篇文章主要讨论了使用JavaScript实现窗口小技巧,避免设计出难用的网站。文章中提供了几种技术来善用JavaScript的窗口功能,包括如何创建无边框窗口、画布模式窗口等。 首先,文章提到使用多窗口(Multi-window)...
jQuery插件提供了一种便捷的方式来实现这种弹出模式窗口,使得用户体验更加流畅,且不离开当前页面。本篇文章将深入探讨jQuery中的弹出模式窗口,特别是名为jQuery-Impromptu的插件。 ### 1. jQuery基础知识 ...
本示例是用div元素实现的模式窗口,结合了HTML、CSS和JavaScript(包括jQuery库)技术,适用于.NET开发环境。 首先,`text.html`文件展示了模式窗口的实际效果。在HTML中,我们通常会创建一个隐藏的div作为模态窗口...
JavaScript 弹出窗口方法是 Web 开发中常用的技术,用于实现弹出窗口、刷新网页、模式窗口等功能。本文将对 JavaScript 弹出窗口方法进行总结和分析,帮助读者更好地理解和应用这些方法。 一、无提示刷新网页 在 ...
首先,模式窗口的实现可以基于HTML、CSS和JavaScript。HTML用于构建对话框的基本结构,CSS用于样式设置,使其看起来像一个弹出窗口,而JavaScript则负责添加交互性和动态效果,如显示、隐藏以及处理用户输入。 在...
在JavaScript(js)中,模式窗口的实现有很多种方法,包括使用内置的`window.alert()`、`window.confirm()`和`window.prompt()`函数,但这些功能有限,无法满足复杂的UI需求。因此,开发者通常会使用第三方库,如...