zoukankan      html  css  js  c++  java
  • 【JavaScript】打造自己的函数

    以下内容为学习记录,可以参考 MDN 原文。

    环境

    • vscode 1.46
    • Microsoft Edge 83

    展示信息的方法

    function displayMessage() {
     
    }
    

    html 模板

    <!DOCTYPE html>
    <html>
    
    <head>
      <meta charset="utf-8">
      <title>Function stage 4</title>
    </head>
    
    <body>
      <button>Display message box</button>
    
      <script>
    
      </script>
    </body>
    
    </html>
    

    css 样式

      <style>
        .msgBox {
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
           242px;
          border-radius: 10px;
          background-color: #eee;
          background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1));
        }
    
        .msgBox p {
          line-height: 1.5;
          padding: 10px 20px;
          color: #333;
          padding-left: 82px;
          background-position: 25px center;
          background-repeat: no-repeat;
        }
    
        .msgBox button {
          background: none;
          border: none;
          position: absolute;
          top: 0;
          right: 0;
          font-size: 1.1rem;
          color: #aaa;
        }
      </style>
    

    js 逻辑

        const btn = document.querySelector('button');
    
        btn.onclick = function () {
          displayMessage('Brian: Hi there, how are you today?', 'chat');
        };
    
        function displayMessage(msgText, msgType) {
          const html = document.querySelector('html');
    
          const panel = document.createElement('div');
          panel.setAttribute('class', 'msgBox');
          html.appendChild(panel);
    
          const msg = document.createElement('p');
          msg.textContent = msgText;
          panel.appendChild(msg);
    
          const closeBtn = document.createElement('button');
          closeBtn.textContent = 'x';
          panel.appendChild(closeBtn);
    
          closeBtn.onclick = function () {
            panel.parentNode.removeChild(panel);
          }
    
          if (msgType === 'warning') {
            msg.style.backgroundImage = 'url(icons/warning.png)';
            panel.style.backgroundColor = 'red';
          } else if (msgType === 'chat') {
            msg.style.backgroundImage = 'url(icons/chat.png)';
            panel.style.backgroundColor = 'aqua';
          } else {
            msg.style.paddingLeft = '20px';
          }
        }
    

    如果想获取图片和源码,可以点击这里

  • 相关阅读:
    k8S 搭建集群
    K8S搭建
    华为交换机常用命令
    JSP中动态include和静态include的区别
    什么情况下调用doGet()和doPost()
    get和post的区别
    什么是spring框架
    spring的作用
    什么是DI
    依赖注入的三种实现方式
  • 原文地址:https://www.cnblogs.com/jiangbo44/p/13296611.html
Copyright © 2011-2022 走看看