`
shoushounihao
  • 浏览: 41196 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

js 弹出遮罩层

    博客分类:
  • js
 
阅读更多


<html >
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>mask</title>
    <style type="text/css">
      #newDiv
      {
           
      }
    </style>
</head>
<body>

    <script type="text/javascript">
        var docEle = function() {
            return document.getElementById(arguments[0]) || false;
        }

        function openNewDiv(_id) {
            var m = "mask";
            if (docEle(_id)) document.body.removeChild(docEle(_id));
            if (docEle(m)) document.body.removeChild(docEle(m));

            //mask遮罩层
            var newMask = document.createElement("div");
            newMask.id = m;
            newMask.style.position = "absolute";
            newMask.style.zIndex = "1";
            _scrollWidth = Math.max(document.body.scrollWidth, document.documentElement.scrollWidth);
            _scrollHeight = Math.max(document.body.scrollHeight, document.documentElement.scrollHeight);
            newMask.style.width = _scrollWidth + "px";
            newMask.style.height = _scrollHeight + "px";
            newMask.style.top = "0px";
            newMask.style.left = "0px";
            newMask.style.background = "#33393C";
            newMask.style.filter = "alpha(opacity=10)";
            newMask.style.opacity = "0.20";
            document.body.appendChild(newMask);

            //新弹出层
            var newDiv = document.createElement("div");
            newDiv.id = _id;
            newDiv.style.position = "absolute";
            newDiv.style.zIndex = "9999";
            newDivWidth = 400;
            newDivHeight = 200;
            newDiv.style.width = newDivWidth + "px";
            newDiv.style.height = newDivHeight + "px";
            newDiv.style.top = (document.body.scrollTop + document.body.clientHeight / 2 - newDivHeight / 2) + "px";
            newDiv.style.left = (document.body.scrollLeft + document.body.clientWidth / 2 - newDivWidth / 2) + "px";
            newDiv.style.background = "#EFEFEF";
            newDiv.style.border = "1px solid #860001";
            newDiv.style.padding = "5px";
            newDiv.innerHTML = "弹出层内容 ";
            document.body.appendChild(newDiv);

            //弹出层滚动居中

            function newDivCenter() {
                newDiv.style.top = (document.body.scrollTop + document.body.clientHeight / 2 - newDivHeight / 2) + "px";
                newDiv.style.left = (document.body.scrollLeft + document.body.clientWidth / 2 - newDivWidth / 2) + "px";
            }
            if (document.all) {
                window.attachEvent("onscroll", newDivCenter);
            }
            else {
                window.addEventListener('scroll', newDivCenter, false);
            }

            //关闭新图层和mask遮罩层

            var newA = document.createElement("a");
            newA.href = "#";
            newA.innerHTML = "关闭";
            newA.onclick = function() {
                if (document.all) {
                    window.detachEvent("onscroll", newDivCenter);
                }
                else {
                    window.removeEventListener('scroll', newDivCenter, false);
                }
                document.body.removeChild(docEle(_id));
                document.body.removeChild(docEle(m));
                return false;
            }
            newDiv.appendChild(newA);
        }
    </script>

    <body>
        <a  style="cursor: pointer">点击弹出遮罩层</a>
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
    </body>
    <script type="text/javascript">
     openNewDiv('newDiv');
    </script>
</html>

 

分享到:
评论

相关推荐

    JavaScript弹出遮罩层

    JavaScript弹出遮罩层是前端开发中的基本技巧,它涉及到DOM操作、事件处理、样式控制等多个方面,而`ShowDiv.js`正是这些功能的实现载体。理解并掌握这种技术对于提升网页的交互性和用户体验至关重要。

    JS弹出遮罩层

    &lt;title&gt;JS弹出遮罩层 .mask { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); display: none; z-index: 9999; } .modal { position: fixed;...

    js弹出遮罩层

    在网页设计中,"js弹出遮罩层"是一个常见的功能,它允许用户与特定的交互元素进行互动,而暂时屏蔽掉页面上的其他内容。这种技术可以用于显示警告信息、模态对话框、加载提示或者任何需要用户关注的特殊内容。在...

    js弹出遮罩层效果

    JS弹出遮罩层效果 在Web开发中,弹出遮罩层效果是一个非常常见的交互方式,能够吸引用户的注意,并提供更好的用户体验。本资源提供了一种简单易用的JS弹出遮罩层效果,能够满足大多数项目的需求。 以下是该效果的...

    javascript 弹出遮罩层,弹出半透明的遮罩层并显示注册文本框内容

    javascript 弹出遮罩层,弹出半透明的遮罩层并显示注册文本框内容,让网页更生动

    JS移动端点击弹出遮罩层

    "JS移动端点击弹出遮罩层"这一功能就是一个典型的交互设计,它允许用户通过点击按钮来显示一个覆盖整个屏幕的半透明层,通常用于加载提示、模态对话框或者阻止背景操作等场景。下面将详细介绍如何使用JavaScript来...

    微信判断浏览器自动弹出遮罩层代码

    在开发微信相关的网页应用时,有时我们需要针对微信内置浏览器(X5内核)做一些特定的适配,例如自动弹出遮罩层。这是因为微信浏览器在某些情况下,如打开外部链接时,可能会有自己的行为,比如自动加载微信的分享...

    jQuery图片点击弹出遮罩层标记注释特效

    **jQuery图片点击弹出遮罩层标记注释特效详解** jQuery是一个广泛应用于Web开发的JavaScript库,它简化了HTML文档遍历、事件处理、动画设计和Ajax交互等任务。在这个项目中,我们讨论的是如何利用jQuery实现一种...

    js实现的弹出遮罩层特效

    "js实现的弹出遮罩层特效"标题所指的就是利用JavaScript语言来实现这一功能。JavaScript是一种强大的客户端脚本语言,常用于增强网页的动态性和交互性。下面我们将深入探讨如何使用JavaScript来创建一个弹出遮罩层...

    点击弹出浮动层 弹出遮罩层

    在网页设计和开发中,...总之,“点击弹出浮动层 弹出遮罩层”是网页设计中一个重要的交互元素,通过巧妙的CSS和JavaScript技术可以实现良好的用户体验。开发者应注重细节,确保其在各种场景下都能高效、友好地工作。

    js+css点击弹出遮罩层图片放大展示demo

    综上所述,这个"js+css点击弹出遮罩层图片放大展示demo"通过结合JavaScript和CSS的力量,实现了优雅的图片放大查看功能,为用户带来了更直观、更具沉浸感的浏览体验。在实际项目中,可以根据需求进行调整和优化,以...

    弹出遮罩层

    创建一个简单的HTML/CSS/JavaScript弹出遮罩层示例: ```html &lt;div id="mask"&gt;&lt;/div&gt; 这是一个弹出窗口 ()"&gt;关闭 ``` ```css #mask { position: fixed; top: 0; left: 0; width: 100%; height: 100...

    asp.net弹出遮罩层示例

    在ASP.NET中,我们可以结合使用JavaScript库,如jQuery,来实现丰富的用户体验,包括弹出遮罩层功能。遮罩层通常用于在页面上显示半透明或全屏覆盖,以突出显示某个操作或信息,同时阻止用户与背景内容交互。 在这...

    jQuery弹出遮罩层步骤流程表单代码

    在这个“jQuery弹出遮罩层步骤流程表单代码”项目中,我们将会探讨如何利用jQuery来实现一个功能丰富的交互式用户体验,特别是涉及弹出遮罩层、步骤流程和表单提交。 首先,`index.html`是项目的主页面,它包含了...

    弹出遮罩层示例

    实现弹出遮罩层的方法多种多样,可以使用纯CSS、JavaScript或者结合两者。在纯CSS方法中,我们可以通过设置绝对定位、宽高、背景颜色(通常是半透明)以及z-index属性来创建遮罩层。子窗口则通过相似的定位方式置于...

    JS变灰页面显示遮罩层登录窗口,使页面无法操作

    这种效果通常通过JavaScript(JS)配合CSS来实现,其中涉及到的技术包括页面元素禁用、遮罩层创建以及Ajax无刷新加载。下面我们将详细讨论这些知识点。 1. **JS变灰页面**: 在JavaScript中,我们可以使用DOM操作...

    jQuery点击弹出遮罩层图片放大查看代码

    总的来说,"jQuery点击弹出遮罩层图片放大查看代码"是提高网站用户体验的一种实用技术,它通过简单的JavaScript和CSS实现,让图片查看更加便捷。在实际应用中,开发者可以根据需求进行定制,比如调整遮罩层的颜色、...

Global site tag (gtag.js) - Google Analytics