js如何实现点击图片弹出窗口并放大这张图片,弹出的窗口有半透明遮罩层效果,弹出的窗口不跳页面

JavaScript026

js如何实现点击图片弹出窗口并放大这张图片,弹出的窗口有半透明遮罩层效果,弹出的窗口不跳页面,第1张

通过JS代码  document.getElementById('divID').style.etElementById('divID').style.display = 'none'。函数可以实现。

1、遮罩层:<div id="back"></div>,即作为背景层,覆盖整个页面。弹出层:<div id="form"></div>,即背景层上的一层,此层可根据#form{top: 10%left: 10%width: 20%height: 30%},调整弹出层的弹出位置。

2、弹出层和遮罩层全部为div标签,可以利用display来控制显示和隐藏的属性,在js中,显示:   document.getElementById('divID').style.display = document.getElementById('divID').style.display = 'none'。

3、显示遮罩层和弹出层,即可用图中popDiv()函数表示: 其中,showId 表示弹出层的divId, backId 表示遮罩层的divId;函数第去、2行显示弹出层和遮罩,3、4、5行设置遮罩层的长度、宽度。

4、关闭弹出层和遮罩层用hideDiv函数(), 其中:showId 表示弹出层的divId, backId 表示遮罩层的divId;先关闭弹出层,后关闭遮罩层。

5、点击按钮后,弹出,要给按钮加上onclick函数,<button onclick="popDiv('form','back')">点我,显示弹出层</button>。

6、整体代码如下,css 样式可根据个人的喜好自行添加。

没明白你的意思。我写的你看看能用就采用

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>    </title>

</head>

<style>

.img{

position: fixed

z-index: 10

top:50%

left: 50%

margin-top: -200px

margin-left: -200px

}

#close{

position: absolute

left: 10px

top: 5px

}

body{

background-color: #333

}

</style>

<body>

<div class="mask"></div>

<div class="img">

<span id="close">关闭</span>

<img src="dd.png" alt="">

</div>

</body>

<script>

var mask = document.getElementById('close')

var img = document.getElementsByTagName('img')[0]

mask.onclick=function(){

img.style.display = "none"

this.style.display = "none"

}

</script>

</html>

没明白你的意思。我想的是打开页面的时候就是一个弹窗状态,当我点击关闭后弹窗图片消失。我中间的白色“找不到服务器”是图片

最好用插件,去layer官网有专门的点击图片,弹出浏览还支持多个图片。

先去官网下载layer包,你的网页引用layer的js文件。

地址:网页链接 点击相册层

然后js代码:

//调用示例

layer.ready(function(){ //为了layer.ext.js加载完毕再执行

var ps=$("#psize").val()

layer.photos({

photos: '#layer-photos-demo'

,shift: ps //0-6的选择,指定弹出图片动画类型,默认随机

})

})

html代码:

<div id="layer-photos-demo" class="layer-photos-demo" >

<img layer-pid="图片id,可以不写" layer-src="缩略图片地址" src="图片地址" alt="" style="height: 140pxwidth: 120pxborder:1px solid #bbb">

</div>