JS实现点击登录弹出窗口同时背景色渐变动画效果


Posted in Javascript onMarch 25, 2016

本文实例讲述了JS实现点击登录弹出窗口同时背景色渐变动画效果。分享给大家供大家参考,具体如下:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<STYLE>
  #login{
   position: relative;
   display: none;
     top: 20px;
     left: 30px;
     background-color: #ffffff;
     text-align: center;
     border: solid 1px;
     padding: 10px;
     z-index: 1;
  }
body {
background-color: #0099CC;
}
.STYLE1 {color: #FFFF00}
</STYLE>
<script type="text/javascript">
var W = screen.width;//取得屏幕分辨率宽度
var H = screen.height;//取得屏幕分辨率高度
function M(id){
  return document.getElementById(id);//用M()方法代替document.getElementByIdx_x(id)
}
function MC(t){
  return document.createElement(t);//用MC()方法代替document.createElement_x(t)
};
//判断浏览器是否为IE
function isIE(){
   return (document.all && window.ActiveXObject && !window.opera) ? true : false;
}
//取得页面的高宽
function getBodySize(){
  var bodySize = [];
  with(document.documentElement) {
  bodySize[0] = (scrollWidth>clientWidth)?scrollWidth:clientWidth;//如果滚动条的宽度大于页面的宽度,取得滚动条的宽度,否则取页面宽度
  bodySize[1] = (scrollHeight>clientHeight)?scrollHeight:clientHeight;//如果滚动条的高度大于页面的高度,取得滚动条的高度,否则取高度
  }
  return bodySize;
}
//创建遮盖层
function popCoverDiv(){
  if (M("cover_div")) {
  //如果存在遮盖层,则让其显示
  M("cover_div").style.display = 'block';
  } else {
  //否则创建遮盖层
  var coverDiv = MC('div');
  document.body.appendChild(coverDiv);
  coverDiv.id = 'cover_div';
  with(coverDiv.style) {
   position = 'absolute';
   background = '#CCCCCC';
   left = '0px';
   top = '0px';
   var bodySize = getBodySize();
   width = bodySize[0] + 'px'
   height = bodySize[1] + 'px';
   zIndex = 0;
   if (isIE()) {
   filter = "Alpha(Opacity=60)";//IE逆境
   } else {
   opacity = 0.6;
   }
  }
  }
}
//让登陆层显示为块
function showLogin()
{
  var login=M("login");
  login.style.display = "block";
}
//设置DIV层的样式
function change(){
   var login = M("login");
   login.style.position = "absolute";
   login.style.border = "1px solid #CCCCCC";
   login.style.background ="#F6F6F6";
   var i=0;
   var bodySize = getBodySize();
   login.style.left = (bodySize[0]-i*i*4)/2+"px";
   login.style.top = (bodySize[1]/2-100-i*i)+"px";
   login.style.width =   i*i*4 + "px";
   login.style.height = i*i*1.5 + "px";
   popChange(i);
}
//让DIV层大小循环增大
function popChange(i){
   var login = M("login");
   var bodySize = getBodySize();
   login.style.left = (bodySize[0]-i*i*4)/2+"px";
   login.style.top = (bodySize[1]/2-100-i*i)+"px";
   login.style.width =   i*i*4 + "px";
   login.style.height = i*i*1.5+ "px";
   if(i<=10){
      i++;
      setTimeout("popChange("+i+")",10);//设置超时10毫秒
   }
}
//打开DIV层
function open()
{
    change();
    showLogin();
    popCoverDiv()
    void(0);//不进行任何操作,如:<a href="#">aaa</a>
}
//关闭DIV层
function close(){
     M('login').style.display = 'none';
     M("cover_div").style.display = 'none';
    void(0);
}
</script>
</head>
<body>
<br>
<br>
<div align="center"><a href="javascript:open();" class="STYLE1">登陆</a></div>
<div id="login">
<span>用户登陆</span>
  <div id="panel">
  <lable>用户名: </lable><input type="text" size="20" />
  <lable>密码: </lable><input type="password" size="20">
  <input type="checkbox" /><lable>登陆</lable>
  </div>
  <input type="button" value="提交" />
  <a href="javascript:close();">关闭</a>
</div>
</body>
</html>

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
Javascript的一种模块模式
Mar 22 Javascript
解决JS浮点数运算出现Bug的方法
Mar 12 Javascript
使用pjax实现无刷新更改页面url
Feb 05 Javascript
js实现跟随鼠标移动且带关闭功能的图片广告实例
Feb 26 Javascript
Jquery 分页插件之Jquery Pagination
Aug 25 Javascript
使用jquery判断一个元素是否含有一个指定的类(class)实例
Feb 12 Javascript
Bootstrap风格的zTree右键菜单
Feb 17 Javascript
详解http访问解析流程原理
Oct 18 Javascript
Vue2.x中利用@font-size引入字体图标报错的解决方法
Sep 28 Javascript
详解在create-react-app使用less与antd按需加载
Dec 06 Javascript
30分钟精通React今年最劲爆的新特性——React Hooks
Mar 11 Javascript
JavaScript代码实现微博批量取消关注功能
Feb 05 Javascript
JS实现响应鼠标点击动画渐变弹出层效果代码
Mar 25 #Javascript
JS+CSS实现鼠标经过弹出一个DIV框完整实例(带缓冲动画渐变效果)
Mar 25 #Javascript
JS+CSS实现的漂亮渐变背景特效代码(6个渐变效果)
Mar 25 #Javascript
详解Javascript继承的实现
Mar 25 #Javascript
JavaScript实现弹出DIV层同时页面背景渐变成半透明效果
Mar 25 #Javascript
JavaScript修改作用域外变量的方法
Mar 25 #Javascript
JavaScript 2048 游戏实例代码(简单易懂)
Mar 25 #Javascript
You might like
php不用正则采集速度探究总结
2008/03/24 PHP
php下连接ftp实现文件的上传、下载、删除文件实例代码
2010/06/03 PHP
php实现xml转换数组的方法示例
2017/02/03 PHP
jquery插件之easing使用
2010/08/19 Javascript
客户端限制只能上传jpg格式图片的js代码
2010/12/09 Javascript
javascript中数组的冒泡排序使用示例
2013/12/18 Javascript
yepnope.js使用详解及示例分享
2014/06/23 Javascript
javascript 动态创建表格
2015/01/08 Javascript
javascript模拟C#格式化字符串
2015/08/26 Javascript
jquery实现红色竖向多级向右展开的导航菜单效果
2015/08/31 Javascript
jquery实现隐藏在左侧的弹性弹出菜单效果
2015/09/18 Javascript
基于JS代码实现当鼠标悬停表格上显示这一格的全部内容
2016/06/12 Javascript
vue2的todolist入门小项目的详细解析
2017/05/11 Javascript
详解用Node.js实现Restful风格webservice
2017/09/29 Javascript
深入理解Vue.js轻量高效的前端组件化方案
2018/12/10 Javascript
JavaScript数组去重实现方法小结
2020/01/17 Javascript
[06:20]2015国际邀请赛第三日top10
2015/08/08 DOTA
[39:18]完美世界DOTA2联赛PWL S3 Forest vs LBZS 第二场 12.17
2020/12/19 DOTA
python文件操作整理汇总
2014/10/21 Python
浅析Python中的for 循环
2016/06/09 Python
Python3中lambda表达式与函数式编程讲解
2019/01/14 Python
PyTorch的深度学习入门之PyTorch安装和配置
2019/06/27 Python
Python对接支付宝支付自实现功能
2019/10/10 Python
python opencv 实现对图像边缘扩充
2020/01/19 Python
Python视频编辑库MoviePy的使用
2020/04/01 Python
如何在vscode中安装python库的方法步骤
2021/01/06 Python
css3media响应式布局实例
2016/07/08 HTML / CSS
全球第二大家装零售商:Lowe’s
2018/01/13 全球购物
文件中有一组整数,要求排序后输出到另一个文件中
2012/01/04 面试题
美德好少年事迹材料
2014/01/19 职场文书
技校毕业生自荐书
2014/05/23 职场文书
党员思想汇报材料
2014/12/19 职场文书
初三毕业感言
2015/07/31 职场文书
部门主管竞聘书
2015/09/15 职场文书
解决python绘图使用subplots出现标题重叠的问题
2021/04/30 Python
Python中的 enumerate和zip详情
2022/05/30 Python