zoukankan      html  css  js  c++  java
  • 小弹窗+按钮

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>Document</title>
        <style>
            .div{
                300px;
                height:300px;
                border:1px solid red;
                background: #ebebeb;
            }
    
            .toggle{
                100px;
                height:100px;
                margin-top:10px;
                border:1px solid #c7c6c6;
                border-radius: 5px;
                background: white;
                box-shadow: 0 0 20px #333;
    
                transition: all .1s ease;
    
                transform-origin:0 0;
                transform: scale(0);
            }
            .toggleActive{
                animation: toggle .2s forwards;
            }
    
            @keyframes toggle{
                0%{
                    transform: scale(0);
                }
                90%{
                    transform: scale(1.1);
                }
                100%{
                    transform: scale(1);  
                }
            }
        </style>
    
    </head>
    <body>
        <div class="div">
            <button>点击</button>
            <div class="toggle">
                <ul>
                    <li>1111</li>
                    <li>2222</li>
                    <li>3333</li>
                </ul>
            </div>
        </div>
    
        <script>
            function hasClass(ele, cls) {
                cls = cls || '';
                if (cls.replace(/s/g, '').length == 0) return false; 
                return new RegExp(' ' + cls + ' ').test(' ' + ele.className + ' ');
            }
                
            function addClass(ele, cls) {
                if (!hasClass(ele, cls)) {
                    ele.className = ele.className == '' ? cls : ele.className + ' ' + cls;
                }
            }
                
            function removeClass(ele, cls) {
                if (hasClass(ele, cls)) {
                    var newClass = ' ' + ele.className.replace(/[	
    ]/g, '') + ' ';
                    while (newClass.indexOf(' ' + cls + ' ') >= 0) {
                    newClass = newClass.replace(' ' + cls + ' ', ' ');
                    }
                    ele.className = newClass.replace(/^s+|s+$/g, '');
                }
            }
    
            var button = document.getElementsByTagName('button')[0];
            var toggle = document.getElementsByClassName('toggle')[0];
    
            button.onclick = function(){
                if(!hasClass(toggle, 'toggleActive')){
                    addClass(toggle, 'toggleActive')
                }else{
                    removeClass(toggle, 'toggleActive')
                }
            }
        </script>
    </body>
    </html>

     

  • 相关阅读:
    2016Wireshark
    移动UI
    Javascript 严格模式详解
    [转]深入浅出JSONP解决ajax跨域问题
    savedev和save的区别
    jquery各版本区别
    Webpack学习笔记(一)
    Html5新特性
    chrome浏览器debug
    bootstrap笔记
  • 原文地址:https://www.cnblogs.com/chefweb/p/9443826.html
Copyright © 2011-2022 走看看