纯js实现遮罩层效果原理分析

时间:2024-02-24 01:32:14 

可以说这个功能,在我理解了前面的“贪吃蛇”之后,实在是与刚开始想象的难度差了好多,当然是这种方式有取巧之嫌,终归是实现了功能,我们来进行分析整理

1、实现原理

本片文章的 是实现原理如下:

* 实际上弹出层、遮罩层和原页面显示分别为三个不同的div

* 弹出层的层级在遮罩层之上,遮罩层的层级在原页面显示之上;

* 遮罩层有通明效果

* 遮罩层没有实际意义,则无需在html部分就写上,当然写上同样可以实现

2、代码实现

html语言如下:


<html>

....

<body>

<center>

<div ><input type="button" value="go" onclick="show()"></div>

<div id="alert" style="display:none;">

<form>

登录

<input type="text"><input type="password"><input type="submit" value="login">

</form>

</div>

</center>

</body>

</html>


javascript实现弹出层和遮罩层:


<span style="font-size:12px;">function show(){
var alertPart=document.getElementById("alert");
alertPart.style.display="block";
alertPart.style.position = "absolute";
alertPart.style.top = "50%";
alertPart.style.left = "50%";
alertPart.style.marginTop = "-75px";
alertPart.style.marginLeft = "-150px";
alertPart.style.background="cyan";
alertPart.style.width="300px";
alertPart.style.height="200px";
alertPart.style.zIndex = "501";

var mybg = document.createElement("div");
mybg.setAttribute("id","mybg");
mybg.style.background = "#000";
mybg.style.width = "100%";
mybg.style.height = "100%";
mybg.style.position = "absolute";
mybg.style.top = "0";
mybg.style.left = "0";
mybg.style.zIndex = "500";
mybg.style.opacity = "0.3";
mybg.style.filter = "Alpha(opacity=30)";
document.body.appendChild(mybg);

document.body.style.overflow = "hidden";
}
</script></span>


这里用z-index来区分层级,opacity和filter:alpha(opacity=)透明度,document.createElement("div")和document.body.appendChild()这些都是在之前出现过,应用过的了,这样我们就能实现了,其实当原理明白了的那一刻,一切也就容易多了吧。

路漫漫而修远兮啊

标签:纯js,遮罩层
0
投稿

猜你喜欢

  • Django读取Mysql数据并显示在前端的实例

    2023-11-09 17:36:49
  • python使用post提交数据到远程url的方法

    2023-11-12 07:10:19
  • Go gRPC服务双向流式RPC教程

    2024-02-09 15:25:35
  • Python+matplotlib实现堆叠图的绘制

    2023-07-21 17:38:35
  • Oracle中在pl/sql developer修改表的2种方法

    2024-01-20 13:06:35
  • Python3 tkinter 实现文件读取及保存功能

    2023-10-24 19:45:46
  • ASP使用wsImage组件给图片加水印代码

    2010-06-09 19:23:00
  • python 寻找优化使成本函数最小的最优解的方法

    2023-03-02 16:42:39
  • python被修饰的函数消失问题解决(基于wraps函数)

    2021-07-22 17:32:34
  • python的flask框架难学吗

    2023-08-18 15:34:32
  • php 生成静态页面的办法与实现代码详细版

    2023-10-31 06:05:33
  • ORACLE常见错误代码的分析与解决(三)

    2010-07-31 12:45:00
  • golang解析网页利器goquery的使用方法

    2023-10-13 06:36:12
  • golang微服务框架基础Gin基本路由使用详解

    2023-07-23 10:31:19
  • Python中list列表添加元素的3种方法总结

    2022-10-03 21:40:43
  • Python中赋值运算符的含义与使用方法

    2022-05-21 12:13:45
  • python使用配置文件过程详解

    2023-12-12 12:57:17
  • pandas条件组合筛选和按范围筛选的示例代码

    2023-06-13 07:15:37
  • 如何判断URL格式是否符合规范?

    2010-01-12 20:14:00
  • sqlserver数据库危险扩展删除和恢复代码

    2024-01-27 19:30:46
  • asp之家 网络编程 m.aspxhome.com