javascript+html5+css3自定义弹出窗口效果


Posted in Javascript onOctober 26, 2017

本文实例为大家分享了js自定义弹出窗口效果展示的具体代码,供大家参考,具体内容如下

效果图:

javascript+html5+css3自定义弹出窗口效果

源码:

1.demo.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
  <title>自定义弹出窗口</title>
  <script type="text/javascript" src="js/myLayer.js"></script>
  <style type="text/css">
    button{
      width: 50px;
      height: 50px;
      border: 1px solid blue;
      background-color: blue;
      color: red;
      border-radius: 5px;
      -webkit-box-shadow: 2px 2px 2px gray;
      -moz-box-shadow: 2px 2px 2px gray ;
      box-shadow: 2px 2px 2px gray ;
    }
    button:hover{
      background-color: green;
      cursor: pointer;
    }
  </style>
  <script type="text/javascript">
    function openWindow() {
      new MyLayer({
        top:"10%",
        left:"10%",
        width:"80%",
        height:"80%",
        title:"我的标题",
        content:"操作成功"
      }).openLayer();
    }
  </script>
</head>
<body>
  <button type="button" onclick="openWindow()">打开弹窗</button>
</body>
</html> 

2.myLayer.js

/**
 * Created by zhuwenqi on 2017/6/16.
 */
/**
 * @param options 弹窗基本配置信息
 * @constructor 构造方法
 */
function MyLayer(options) {
  this.options = options ;
}
/**
 * 打开弹窗
 */
MyLayer.prototype.openLayer = function () {
  var background_layer = document.createElement("div");
  background_layer.style.display = "none";
  background_layer.style.position = "absolute";
  background_layer.style.top = "0px";
  background_layer.style.left = "0px";
  background_layer.style.width = "100%";
  background_layer.style.height = "100%";
  background_layer.style.backgroundColor = "gray";
  background_layer.style.zIndex = "1001";
  background_layer.style.opacity = "0.8" ;
  var open_layer = document.createElement("div");
  open_layer.style.display = "none";
  open_layer.style.position = "absolute";
  open_layer.style.top = this.options.top === undefined ? "10%" : this.options.top;
  open_layer.style.left = this.options.left === undefined ? "10%" :this.options.left;
  open_layer.style.width = this.options.width === undefined ? "80%" : this.options.width;
  open_layer.style.height = this.options.height === undefined ? "80%" : this.options.height;
  open_layer.style.border = "1px solid lightblue";
  open_layer.style.borderRadius = "15px" ;
  open_layer.style.boxShadow = "4px 4px 10px #171414";
  open_layer.style.backgroundColor = "white";
  open_layer.style.zIndex = "1002";
  open_layer.style.overflow = "auto";
  var div_toolBar = document.createElement("div");
  div_toolBar.style.textAlign = "right";
  div_toolBar.style.paddingTop = "10px" ;
  div_toolBar.style.backgroundColor = "aliceblue";
  div_toolBar.style.height = "40px";
  var span_title = document.createElement("span");
  span_title.style.fontSize = "18px";
  span_title.style.color = "blue" ;
  span_title.style.float = "left";
  span_title.style.marginLeft = "20px";
  var span_title_content = document.createTextNode(this.options.title === undefined ? "" : this.options.title);
  span_title.appendChild(span_title_content);
  div_toolBar.appendChild(span_title);
  var span_close = document.createElement("span");
  span_close.style.fontSize = "16px";
  span_close.style.color = "blue" ;
  span_close.style.cursor = "pointer";
  span_close.style.marginRight = "20px";
  span_close.onclick = function () {
    open_layer.style.display = "none";
    background_layer.style.display = "none";
  };
  var span_close_content = document.createTextNode("关闭");
  span_close.appendChild(span_close_content);
  div_toolBar.appendChild(span_close);
  open_layer.appendChild(div_toolBar);
  var div_content = document.createElement("div");
  div_content.style.textAlign = "center";
  var content_area = document.createTextNode(this.options.content === undefined ? "" : this.options.content);
  div_content.appendChild(content_area);
  open_layer.appendChild(div_content);
  document.body.appendChild(open_layer);
  document.body.appendChild(background_layer);
  open_layer.style.display = "block" ;
  background_layer.style.display = "block";
};

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js no-repeat写法 背景不重复
Mar 18 Javascript
JQuery 入门实例1
Jun 25 Javascript
jQuery实战之品牌展示列表效果
Apr 10 Javascript
Raphael一个用于在网页中绘制矢量图形的Javascript库
Jan 08 Javascript
鼠标移入移出事件改变图片的分辨率的两种方法
Dec 17 Javascript
javascript批量修改文件编码格式的方法
Jan 27 Javascript
JavaScript对象反射用法实例
Apr 17 Javascript
通过源码分析Vue的双向数据绑定详解
Sep 24 Javascript
详解KOA2如何手写中间件(装饰器模式)
Oct 11 Javascript
webstorm+vue初始化项目的方法
Oct 18 Javascript
jQuery实现左右两个列表框的内容相互移动功能示例
Jan 27 jQuery
详解TypeScript中的类型保护
Apr 29 Javascript
Vue 兄弟组件通信的方法(不使用Vuex)
Oct 26 #Javascript
JS手机端touch事件计算滑动距离的方法示例
Oct 26 #Javascript
JavaScript实现二叉树的先序、中序及后序遍历方法详解
Oct 26 #Javascript
JavaScript实现树的遍历算法示例【广度优先与深度优先】
Oct 26 #Javascript
详述 Sublime Text 打开 GBK 格式中文乱码的解决方法
Oct 26 #Javascript
node.js的exports、module.exports与ES6的export、export default深入详解
Oct 26 #Javascript
详解Webstorm 新建.vue文件支持高亮vue语法和es6语法
Oct 26 #Javascript
You might like
逆序二维数组插入一元素的php代码
2012/06/08 PHP
简单实现限定phpmyadmin访问ip的方法
2013/03/05 PHP
yii的CURD操作实例详解
2014/12/04 PHP
详解WordPress中提醒安装插件以及隐藏插件的功能实现
2015/12/25 PHP
PHP 传输会话curl函数的实例详解
2017/09/12 PHP
Laravel5.1 框架路由基础详解
2020/01/04 PHP
Laravel5.1 框架数据库操作DB运行原生SQL的方法分析
2020/01/07 PHP
图片之间的切换
2006/06/26 Javascript
js focus不起作用的解决方法(主要是因为dom元素是否加载完成)
2010/11/05 Javascript
js中reverse函数的用法详解
2013/12/26 Javascript
jQuery Ajax传值到Servlet出现乱码问题的解决方法
2016/10/09 Javascript
jquery-mobile表单的创建方法详解
2016/11/23 Javascript
layer实现关闭弹出层刷新父界面功能详解
2017/11/15 Javascript
Vue中使用的EventBus有生命周期
2018/07/12 Javascript
通过seajs实现JavaScript的模块开发及按模块加载
2019/06/06 Javascript
使用apifm-wxapi模块中的问题及解决方法
2019/08/05 Javascript
手机浏览器唤起微信分享(JS)
2020/10/11 Javascript
Python实现的简单发送邮件脚本分享
2014/11/07 Python
Windows上配置Emacs来开发Python及用Python扩展Emacs
2015/11/20 Python
浅谈Python的异常处理
2016/06/19 Python
Python实现输出某区间范围内全部素数的方法
2018/05/02 Python
获取django框架orm query执行的sql语句实现方法分析
2019/06/20 Python
python 实现从高分辨图像上抠取图像块
2020/01/02 Python
python+OpenCV实现图像拼接
2020/03/05 Python
jupyter notebook 恢复误删单元格或者历史代码的实现
2020/04/17 Python
浅谈sklearn中predict与predict_proba区别
2020/06/28 Python
GitHub上值得推荐的8个python 项目
2020/10/30 Python
真正了解CSS3背景下的@font face规则
2017/05/04 HTML / CSS
美国女士泳装店:Swimsuits For All
2017/03/02 全球购物
电大自我鉴定范文
2013/10/01 职场文书
汽车销售求职自荐信
2013/10/01 职场文书
大学新生军训自我鉴定范文
2014/09/13 职场文书
2014坚持党风廉政建设思想汇报
2014/09/18 职场文书
优秀班集体申报材料
2014/12/25 职场文书
催款函范文
2015/06/24 职场文书
导游词之海南-南湾猴岛
2019/10/12 职场文书