zoukankan      html  css  js  c++  java
  • 组件开发之弹窗-1

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title>组件开发 弹窗 </title>
        <style type="text/css">
          *{
              margin: 0px;
              padding: 0px;
          }
            #box1{
                border: 1px solid black;
                position: absolute;
            }
            .head{
                height: 20px;
                background: #CCCCCC;
            }
            .right{
                float: right;
                cursor: pointer;
            }
        </style>
        </head>
        <body>
            <input type="button" value="按钮1" />
            <input type="button" value="按钮2" />
            <input type="button" value="按钮3" />
            <!--<div id="box1">
                
            </div>-->
              <script type="text/javascript">
               //只执行一次就叫单体模式
                 window.onload=function()
                 {
                      var ainput = document.getElementsByTagName("input");
                      ainput[0].onclick=function()
                      {
    
                          var d1 = new Drag();
                         d1.init({//配置参数
                               
                         });
                          
                      };
                       
                 };
                 function Drag()//属性
                 {
                      this.ologin=null;//局部变量改变成属性
                    this.settings={//默认参数
                        w:300,
                        h:300,
                        dir:"center"
                    }
                 }
                 Drag.prototype.init=function(opt)//方法
                 {
                        extend(this.settings,opt);
                        this.create();//动态创建弹窗
                        this.oclose();//动态创建关闭
                     
                 };
                 Drag.prototype.create=function()
                 {
                      //var ologin =document.createElement("div");
                     this.ologin =document.createElement("div");
                          this.ologin.id="box1";
                          this.ologin.innerHTML='<div class="head"><span class="title">标题</span><span class="right">X</span></div><div class="content"></div>'
                   document.body.appendChild(this.ologin);
    
                   this.setDate();//尺寸
                 }
                 Drag.prototype.setDate=function()
                 { // ologin 属性因为找不到 所以要设置全局的
                     this.ologin.style.width = this.settings.w+"px";
                     this.ologin.style.height = this.settings.h+"px";
                     if(this.settings.dir == "center")
                     {
                      this.ologin.style.left = (viewWidth() - this.ologin.offsetWidth)/2 +"px";
                      this.ologin.style.top = (viewHeight() - this.ologin.offsetHeight)/2 +"px";
                     }
                 }
                 Drag.prototype.oclose=function()
                 {
                       var oclose =document.getElementsByTagName("span")[1];
                       var _this = this;
                       oclose.onclick=function()
                       {
                           document.body.removeChild(_this.ologin);
                       }
                       
                 }
                 //-----------------------
                 function  viewWidth(){
                       return document.documentElement.clientWidth;//可视区宽度
                 }
                  function  viewHeight(){
                       return document.documentElement.clientHeight;//可视区高度
                 }
                 function extend (obj1,obj2){
                     for (var attr in obj2) {
                         obj1[attr]=obj2[attr];
                     }
                 }
                 
          </script>
          
        </body>
    </html>
  • 相关阅读:
    linux apache + mysql +php no-yum
    linux apache + mysql +php
    1像素border
    vue-router配置
    错误Cannot find module 'stylus'
    高仿饿了么mock本地数据
    vue2.0高仿饿了么better-scroll
    npm 常用命令
    Gulp工具常用插件
    git总结
  • 原文地址:https://www.cnblogs.com/h5monkey/p/5833059.html
Copyright © 2011-2022 走看看