zoukankan      html  css  js  c++  java
  • JavaScript 图片弹窗

    html

    <!-- 触发弹窗 - 图片改为你的图片地址 -->
    <img loading="lazy" id="myImg" src="img.jpg" alt="文本描述信息" width="300" height="200">
     
    <!-- 弹窗 -->
    <div id="myModal" class="modal">
     
      <!-- 关闭按钮 -->
      <span class="close" onclick="document.getElementById('myModal').style.display='none'">&times;</span>
     
      <!-- 弹窗内容 -->
      <img class="modal-content" id="img01">
     
      <!-- 文本描述 -->
      <div id="caption"></div>
    </div>
    

    css

    /* 触发弹窗图片的样式 */
    #myImg {
        border-radius: 5px;
        cursor: pointer;
        transition: 0.3s;
    }
     
    #myImg:hover {opacity: 0.7;}
     
    /* 弹窗背景 */
    .modal {
        display: none; /* Hidden by default */
        position: fixed; /* Stay in place */
        z-index: 1; /* Sit on top */
        padding-top: 100px; /* Location of the box */
        left: 0;
        top: 0;
         100%; /* Full width */
        height: 100%; /* Full height */
        overflow: auto; /* Enable scroll if needed */
        background-color: rgb(0,0,0); /* Fallback color */
        background-color: rgba(0,0,0,0.9); /* Black w/ opacity */
    }
     
    /* 图片 */
    .modal-content {
        margin: auto;
        display: block;
         80%;
        max- 700px;
    }
     
    /* 文本内容 */
    #caption {
        margin: auto;
        display: block;
         80%;
        max- 700px;
        text-align: center;
        color: #ccc;
        padding: 10px 0;
        height: 150px;
    }
     
    /* 添加动画 */
    .modal-content, #caption { 
        -webkit-animation-name: zoom;
        -webkit-animation-duration: 0.6s;
        animation-name: zoom;
        animation-duration: 0.6s;
    }
     
    @-webkit-keyframes zoom {
        from {-webkit-transform:scale(0)} 
        to {-webkit-transform:scale(1)}
    }
     
    @keyframes zoom {
        from {transform:scale(0)} 
        to {transform:scale(1)}
    }
     
    /* 关闭按钮 */
    .close {
        position: absolute;
        top: 15px;
        right: 35px;
        color: #f1f1f1;
        font-size: 40px;
        font-weight: bold;
        transition: 0.3s;
    }
     
    .close:hover,
    .close:focus {
        color: #bbb;
        text-decoration: none;
        cursor: pointer;
    }
     
    /* 小屏幕中图片宽度为 100% */
    @media only screen and (max- 700px){
        .modal-content {
             100%;
        }
    }
    

    javascript

    // 获取弹窗
    var modal = document.getElementById('myModal');
     
    // 获取图片插入到弹窗 - 使用 "alt" 属性作为文本部分的内容
    var img = document.getElementById('myImg');
    var modalImg = document.getElementById("img01");
    var captionText = document.getElementById("caption");
    img.onclick = function(){
        modal.style.display = "block";
        modalImg.src = this.src;
        captionText.innerHTML = this.alt;
    }
     
    // 获取 <span> 元素,设置关闭按钮
    var span = document.getElementsByClassName("close")[0];
     
    // 当点击 (x), 关闭弹窗
    span.onclick = function() { 
      modal.style.display = "none";
    }
    

    菜鸟教程

  • 相关阅读:
    nioSocket
    Socket
    常见协议和标准
    Object类clone方法
    java中的运算符
    java中方法的定义
    Spring中实现定时调度
    Spring中对资源的读取支持
    HashMap的实现原理
    固定Realm 与配置数据库连接实现登录验证
  • 原文地址:https://www.cnblogs.com/niuben/p/14071417.html
Copyright © 2011-2022 走看看