Javascript 如何制作模态图像库?毫无疑问

Javascript 如何制作模态图像库?毫无疑问,javascript,Javascript,var modal=document.getElementById(“myModal”); var img=document.getElementsByClassName(“img”); var modalImg=document.getElementById(“img01”); var captionText=document.getElementById(“caption”); img.onclick=函数(){ modal.style.display=“块”; modalImg.src=t

var modal=document.getElementById(“myModal”);
var img=document.getElementsByClassName(“img”);
var modalImg=document.getElementById(“img01”);
var captionText=document.getElementById(“caption”);
img.onclick=函数(){
modal.style.display=“块”;
modalImg.src=this.src;
captionText.innerHTML=this.alt;
}
var span=document.getElementsByClassName(“关闭”)[0];
span.onclick=函数(){
modal.style.display=“无”;
}
.row{
显示器:flex;
柔性包装:包装;
填充:0.4px;
证明内容:中心;
}
.栏目{
弹性:1022%;
最大宽度:25%;
填充:0.4px;
}
.img列{
边缘顶部:8px;
垂直对齐:中间对齐;
宽度:100%;
箱形阴影:3px 3px 2px灰色;
边界半径:8px;
}
.img{
光标:指针;
过渡:0.3s;
}
.莫代尔{
显示:无;/*默认情况下隐藏*/
位置:固定;/*保持原位*/
z指数:1;/*位于顶部*/
填充顶部:100px;/*框的位置*/
左:0;
排名:0;
宽度:100%;/*全宽*/
高度:100%;/*全高*/
溢出:自动;/*根据需要启用滚动*/
背景色:rgb(0,0,0);/*回退色*/
背景色:rgba(0,0,0,0.9);/*黑色w/不透明度*/
}
/*模态内容(图像)*/
.模态内容{
保证金:自动;
显示:块;
宽度:80%;
最大宽度:700px;
}
/*模态图像标题(图像文本)-与图像宽度相同*/
#标题{
保证金:自动;
显示:块;
宽度:80%;
最大宽度:700px;
文本对齐:居中;
颜色:#ccc;
填充:10px0;
高度:150像素;
}
/*添加动画-在模式中缩放*/
.模式内容#标题{
动画名称:缩放;
动画持续时间:0.6s;
}
@关键帧缩放{
来自{transform:scale(0)}
到{变换:比例(1)}
}
/*关闭按钮*/
.结束{
位置:绝对位置;
顶部:15px;
右:35px;
颜色:#f1f1;
字体大小:40px;
字体大小:粗体;
过渡:0.3s;
}
.关闭:悬停,
.结束:聚焦{
颜色:#bbb;
文字装饰:无;
光标:指针;
}
/*较小屏幕上的100%图像宽度*/
@仅介质屏幕和(最大宽度:700px){
.模态内容{
宽度:100%;
}
}

例子
&时代;

为了帮助您,您只需在中迭代document.getElementsByClassName(“img”)返回的项目,并将侦听器分配给每个项目

在这里,我放了一只鹬来说明上述情况:

var modal=document.getElementById(“myModal”);
var imgs=document.getElementsByClassName(“img”);
对于(让img代替img){
img.onclick=函数(){
modal.style.display=“块”;
modalImg.src=this.src;
captionText.innerHTML=this.alt;
}
}
var modalImg=document.getElementById(“img01”);
var captionText=document.getElementById(“caption”);
document.getElementsByClassName(“close”)[0]。addEventListener('click',function()){
modal.style.display=“无”;
})
.row{
显示器:flex;
柔性包装:包装;
填充:0.4px;
证明内容:中心;
}
.栏目{
弹性:1022%;
最大宽度:25%;
填充:0.4px;
}
.img列{
边缘顶部:8px;
垂直对齐:中间对齐;
宽度:100%;
箱形阴影:3px 3px 2px灰色;
边界半径:8px;
}
.img{
光标:指针;
过渡:0.3s;
}
.莫代尔{
显示:无;/*默认情况下隐藏*/
位置:固定;/*保持原位*/
z指数:1;/*位于顶部*/
填充顶部:100px;/*框的位置*/
左:0;
排名:0;
宽度:100%;/*全宽*/
高度:100%;/*全高*/
溢出:自动;/*根据需要启用滚动*/
背景色:rgb(0,0,0);/*回退色*/
背景色:rgba(0,0,0,0.9);/*黑色w/不透明度*/
}
/*模态内容(图像)*/
.模态内容{
保证金:自动;
显示:块;
宽度:80%;
最大宽度:700px;
}
/*模态图像标题(图像文本)-与图像宽度相同*/
#标题{
保证金:自动;
显示:块;
宽度:80%;
最大宽度:700px;
文本对齐:居中;
颜色:#ccc;
填充:10px0;
高度:150像素;
}
/*添加动画-在模式中缩放*/
.模式内容#标题{
动画名称:缩放;
动画持续时间:0.6s;
}
@关键帧缩放{
来自{transform:scale(0)}
到{变换:比例(1)}
}
/*关闭按钮*/
.结束{
位置:绝对位置;
顶部:15px;
右:35px;
颜色:#f1f1;
字体大小:40px;
字体大小:粗体;
过渡:0.3s;
}
.关闭:悬停,
.结束:聚焦{
颜色:#bbb;
文字装饰:无;
光标:指针;
}
/*较小屏幕上的100%图像宽度*/
@仅介质屏幕和(最大宽度:700px){
.模态内容{
宽度:100%;
}
}

例子
&时代;

为了帮助您,您只需在中迭代document.getElementsByClassName(“img”)返回的项目,并将侦听器分配给每个项目

在这里,我放了一只鹬来说明上述情况:

var modal=document.getElementById(“myModal”);
var imgs=document.getElementsByClassName(“img”);
对于(让img代替img){
img.onclick=函数(){
modal.style.display=“块”;
modalImg.src=this.src;
captionText.innerHTML=this.alt;
}
}
var modalImg=document.getElementById(“img01”);
var captionText=document.getElementById(“caption”);
document.getElementsByClassName(“close”)[0]。addEventListener('click',function()){
modal.style.display=“无”;
})
.row{
显示器:flex;
柔性包装:包装;
填充:0.4px;
证明内容:中心;
}
.栏目{
弹性:1022%;
最大宽度:25%;
填充:0.4px;
}
.img列{
边缘顶部:8px;
垂直对齐:中间对齐;
宽度:100%;
箱形阴影:3px 3px 2px灰色;
边界半径:8px;
}
.img{
光标:指针;
过渡:0.3s;
}