再次修改了备忘录

Control

<!DOCTYPE html>
<html lang="zh">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>与妖为邻备忘录</title>
  <!-- <link rel="stylesheet" href="./css/index.css"> -->
  <style>
    .home {
      background-color: #ebf303;
      color: #f30303;
      border-radius: 10px 0 0 10px;
      box-shadow: 0 1px 18px rgba(255, 230, 4, 0.5);
      &::after {
        content: '';
        border-color: rgb(255, 0, 0);
        position: absolute;
        left: 838px;
        top: 0px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 30px;
        border-bottom-color: transparent;
        border-left-color: transparent;
        border-right-color: transparent;
        animation: flicker 0.2s infinite 0.3s;
      }
    }
    @keyframes flicker {
      0% {
        opacity: 1;
      }
      80% {
        opacity: 0.8;
      }
      100% {
        opacity: 1;
      }
    }
    /* 格式化样式 */
    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
      user-select: none;
    }
    body {
      /* background-image: url(./img/bg.jpg); */
      /* background-size: cover; */
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      align-items: center;
      color: #fff;
      text-shadow: 1px 1px 1px #000;
      background-color: #2c3e50;
      height: 100vh;
      overflow: hidden;
    }
    li {
      list-style: none;
    }
    a {
      text-decoration: none;
      color: hsla(160, 100%, 37%, 1);
      text-shadow: 1px 1px 1px rgb(0, 0, 0);
      &:hover {
        background-color: #ebf303;
        color: #f30303;
      }
    }
    button {
      box-shadow: 0 0 5px rgba(255, 254, 254, 0.5);
      cursor: pointer;
      &:hover {
        background-color: #f3d303;
      }
    }
    /* 格式化样式 结束*/
    /* 页头 */
    #header {
      display: flex;
      justify-content: space-between;
      width: 100vw;
      height: 8vh;
      box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
      /* logo */
      #logo {
        top: 2px;
        left: 2px;
        width: 8.5vw;
        img {
          float: left;
          width: 66px;
          height: 66px;
          border-radius: 50%;
          transition: transform 0.3s ease;
          &:hover {
            transform: scale(1.2);
          }
        }
        h2 {
          background-color: #f30303;
          border-radius: 50%;
          box-shadow: inset 4px 4px 4px rgba(255, 255, 255, 0.6),
            inset -4px -4px 5px rgba(0, 0, 0, 0.6);
          border: 0px solid black;
        }
        .my_name {
          letter-spacing: -8px;
        }
      }
      /* logo 结束 */
      /* 时间天气  */
      #time_weather {
        width: 40vw;
        display: flex;
        justify-content: center;
        align-items: center;
        #time {
          font-size: 2.5rem;
          background: -webkit-linear-gradient(315deg, #e1ff00 50%, #ff0000);
          /*将背景剪切成文字的形状*/
          background-clip: text;
          -webkit-background-clip: text;
          /*文字颜色设为透明,使文字与背景融为一体*/
          -webkit-text-fill-color: transparent;
          /* 设置字体粗细 */
          font-weight: 900;
          text-shadow: 2px -1px 8px rgba(250, 80, 193, 0.323);
          sub {
            font-size: 1rem;
            text-shadow: 2px -1px 8px rgba(250, 80, 193, 0.323);
          }
        }
        iframe {
          background-color: #f7fdf5a7;
          border-radius: 50px;
          width: 150px;
          height: 40px;
        }
      }
      /* 时间天气结束  */
    }
    /* 导航区 */
    #nav {
      ul {
        width: 40vw;
        height: 8vh;
        display: flex;
        justify-content: space-around;
        align-items: flex-end;
        li {
          font-size: 3rem;
          box-shadow: 0 1px 8px rgba(195, 195, 195, 0.5);
          margin: 2px;
          &:hover {
            background-color: #f3eb03;
            /* 过渡效果 */
            transition: all 0.3s ease;
          }
          &:active {
            background-color: #f30303;
            transition: all 0.3s ease;
          }
        }
        /* 为第一个li元素添加圆角 */
        li:first-child {
          border-top-left-radius: 10px;
          border-bottom-left-radius: 10px;
        }
        /* 为最后一个li元素添加圆角 */
        li:last-child {
          border-radius: 0 10px 10px 0;
        }
      }
    }
    #topRight {
      width: 8.5vw;
      height: 8vh;
    }
    #delete {
      color: #f3d303;
      text-shadow: 1px 1px 1px rgb(0, 0, 0);
      background: #ff0000;
      border-radius: 5px;
      border: none;
      margin: 5px;
      padding: 5px;
      font-size: 20px;
      /* 粗体 */
      font-weight: bold;
      &:hover {
        background-color: #f3d303;
        color: #ff0505;
      }
    }
    #fullBtn {
      font-size: 1.5rem;
    }
    /* 页头结束 */
    /* 内容区 */
    #content {
      display: flex;
      width: 100vw;
      h2 {
        text-align: center;
        margin-top: 10px;
      }
    }
    /* 左侧 */
    #left {
      width: 9vw;
      height: 92vh;
      box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
      #localList {
        text-align: center;
        a {
          display: block;
          margin: 10px;
          padding: 5px;
          box-shadow: 0 2px 8px rgba(255, 251, 251, 0.5);
          border-radius: 3px;
        }
      }
    }
    /* 左侧结束 */
    /* 内容中心 */
    #centre {
      width: 85vw;
      height: 92vh;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }
    #displayBtn {
      display: flex;
      color: #E6A23C;
      background-color: #67c23a79;
      /* 去掉边框 */
      border: none;
      marquee,
      i {
        width: 100%;
        color: chartreuse;
        &:hover {
          background-color: #f3d303;
          color: blueviolet;
        }
      }
    }
    /* 隐藏区 */
    #hidden {
      display: none;
      flex-direction: column;
      position: fixed;
      transform: translate(50%, 50%);
      border-radius: 8px;
      background-color: rgba(0, 0, 0, 0.5);
      z-index: 9;
      box-shadow: 0 0 10px rgba(255, 254, 254, 0.5);
      #Drag {
        height: 35px;
        display: flex;
        justify-content: space-between;
        font-size: 1.5rem;
        box-shadow: 0 0 10px rgba(93, 93, 93, 0.537);
        /* 鼠标变移动指针 */
        cursor: move;
        p {
          margin: 0 10px;
        }
        i {
          /* 去除斜体字 */
          font-style: normal;
          margin: 0 10px;
          cursor: pointer;
          &:hover {
            color: #f30303;
          }
        }
      }
      #form {
        display: flex;
        flex-direction: column;
        background-color: rgba(20, 20, 20, 0.5);
        margin: 10px;
        padding: 5px;
        border-radius: 5px;
        box-shadow: 0 0 5px rgba(255, 254, 254, 0.5);
        z-index: 10;
        sub {
          margin: 10px 0;
          user-select: text;
          color: hsla(160, 100%, 37%, 1);
          text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.951);
        }
        input[type="file"] {
          width: 100%;
          background: #67c23a3e
        }
        div {
          display: flex;
          textarea {
            background-color: rgba(20, 20, 20, 0.5);
            color: #fffcfc;
            text-shadow: 1px 1px 1px #000;
            font-size: 20px;
            &::placeholder {
              color: #fffcfc;
              text-shadow: 1px 1px 1px #000;
            }
          }
        }
      }
    }
    /* 隐藏区结束 */
    /* 留言内容 */
    #memo {
      height: 90vh;
      margin: 0 10px 0 10px;
      border-radius: 10px;
      display: flex;
      align-content: flex-start;
      border: 2px solid rgb(134, 133, 133);
      background-color: #144756;
      font-size: 20px;
      border-radius: 10px;
      flex-wrap: wrap;
      /* overflow: scroll;
       隐藏下边滚动条 */
      overflow-X: hidden;
      span {
        user-select: text;
        color: #1ded39a0;
        margin: 10px;
        &:hover {
          color: #ffffff8c;
        }
        sub {
          position: sticky;
          top: 0px;
          color: rgb(252, 181, 181);
          text-shadow: 1px 1px 1px #030303;
          box-shadow:
            inset -2px -2px 3px rgba(255, 255, 255, 0.6),
            inset 2px 2px 3px rgba(0, 0, 0, 0.6);
          margin: 0px 10px;
          user-select: text;
          border-radius: 20px;
        }
      }
      .finish {
        /* text-decoration: underline; */
        /* text-decoration-color: rgb(255, 0, 0); */
        background-color: rgb(191, 210, 255);
        color: rgb(255, 250, 250);
        text-shadow: 1px 1px 1px #030303;
        box-shadow:
          inset -2px -2px 3px rgba(255, 255, 255, 0.6),
          inset 2px 2px 3px rgba(0, 0, 0, 0.6);
      }
      a {
        text-decoration: none;
        color: #ebf704;
      }
      /* 留言内容区结束 */
    }
    /* 内容中心结束 */
    /* 右侧 */
    #right {
      width: 9vw;
      height: 92vh;
      box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
      #webList {
        text-align: center;
        margin-top: 10px;
        li {
          margin: 10px;
          a {
            box-shadow: 1px 1px 2px 2px rgba(255, 251, 251, 0.5);
            padding: 2px;
            border-radius: 3px;
          }
        }
      }
    }
    /* 右侧结束 */
    /* 内容区结束 */
  </style>
</head>
<body>
  <div id="header">
    <!-- logo -->
    <div id="logo">
      <a href="https://blog.csdn.net/lulei5153" title="与妖为邻CSDN博客" class="" target="_blank">
        <img src="file:///D:\img\kong.jpg" alt="与妖为邻">
      </a>
      <h2 class="my_name">与妖为邻</h2>
      <h2 class="memo">备忘录</h2>
    </div>
    <!-- logo 结束 -->
    <!-- 时间天气 -->
    <div id="time_weather">
      <div id="time">当前时间</div>
      <iframe ref="weather" frameborder="0" width="280" height="36" scrolling="no" hspace="0"
        src="https://i.tianqi.com/?c=code&id=99" style="margin-left:20px;"></iframe>
    </div>
    <!--时间天气结束 -->
    <!-- 导航区 -->
    <div id="nav">
      <ul>
        <li><a href="D:\web\备忘录\html备忘录\备忘录.html" class="home">首页</a></li>
        <li><a href="D:\web\备忘录\html备忘录\英语.html" class="English">英语</a></li>
        <li><a href="D:\web\备忘录\html备忘录\音乐.html" class="music">音乐</a></li>
        <li><a href="D:\web\备忘录\html备忘录\项目.html" class="items">项目</a></li>
        <li><a href="D:\web\备忘录\html备忘录\测试.html" class="test">测试</a></li>
      </ul>
    </div>
    <!-- 导航区结束 -->
    <!-- 右上角按钮 -->
    <div id="topRight">
      <button onclick="openBaidu()">百度一下,你就知道</button>
      <button onclick="closeWindow()">关闭窗口</button>
      <button id="delete">删除</button>
    </div>
    <!-- 右上角按钮结束-->
    <button id="fullBtn" onclick="fullBtn()">全屏</button>
  </div>
  <!--  头部结束-->
  <!-- 内容区 -->
  <div id="content">
    <!-- 左侧 -->
    <div id="left">
      <h2>本地连接</h2>
      <hr />
      <li id="localList"></li>
    </div>
    <!-- 左侧结束 -->
    <!-- 中心 -->
    <div id="centre">
      <button id="displayBtn" href="javascript:;">
        <i>编辑首页页面按钮</i>
        <marquee behavior="alternate" direction="right">编辑首页页面按钮</marquee> <i>编辑首页页面按钮</i>
      </button>
      <!-- 隐藏区 -->
      <div id="hidden">
        <div id="Drag">
          <p>文本操作</p>
          <i href="javascript:void(0);" id="closeBtn">&times</i>
        </div>
        <!--  -->
        <form id="form">
          <input type="file" name="file" accept="text/plain, text/css, text/html, text/javascript, text/markdown"
            class="file" />
          <sub>
            &lt;a class="a_href" href=" " target="_blank"&gt;
            &lt;/a&gt;
            <!-- &nbsp;空格效果  &lt表示左半括号<, 用&gt表示右半括号> .   '&'字符的转义字符串是'&amp;'  -->
            &nbsp;&nbsp;&nbsp;
            &lt
            &amp;lt &amp;gt &gt
          </sub>
          <!--  -->
          <div>
            <input type="reset" value="重置">
            <textarea class="textarea" name="textarea" rows="4" cols="50%"
              placeholder="选择txt、js、css或html文件,文件内容会被自动读取"></textarea>
            <button type="text" class="abb-text">添加</button>
          </div>
        </form>
        <!--  -->
      </div>
      <!-- 隐藏区结束 -->
      <!--留言内容 -->
      <div id="memo"></div>
      <!-- 留言内容结束 -->
      <button id="author">作者:与妖为邻</button>
    </div>
    <!-- 中心结束 -->
    <!-- 右侧 -->
    <div id="right">
      <h2>收藏网站</h2>
      <hr />
      <ul id="webList">
      </ul>
      <!--  右侧 结束--->
    </div>
    <!-- 内容区 结束-->
</body>
<script>
  /* 当前时间*/
  var current_time = document.getElementById("time");
  function showTime(time) {
    var now = new Date();
    var year = now.getFullYear();
    var month = now.getMonth();
    var day = now.getDate();
    var hour = now.getHours();
    var min = now.getMinutes();
    var second = now.getSeconds();
    month = month + 1;
    var arr_work = new Array("星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六");
    var week = arr_work[now.getDay()];
    month = month < 10 ? "0" + month : month;//时间月份个位补0
    day = day < 10 ? "0" + day : day;
    hour = hour < 10 ? "0" + hour : hour;
    min = min < 10 ? "0" + min : min;
    second = second < 10 ? "0" + second : second;
    var time = year + "-" + month + "-" + day + "<sub id='sub'>" + week + "</sub>" + hour + ":" + min + ":" + second;
    current_time.innerHTML = time;
  }
  window.setInterval("showTime(time)", 1000);
  /* 当前时间 结束 */
  /*全屏*/
  document.getElementById("fullBtn").addEventListener("click", function () {
    if (!document.fullscreenElement) {
      document.documentElement.requestFullscreen();
    } else {
      if (document.exitFullscreen) {
        document.exitFullscreen();
      }
    }
  });
  /* 全屏 结束 */
  /*隐藏区*/
  // 1. 获取元素
  var hidden = document.querySelector("#hidden");
  // var mask = document.querySelector('#none');
  // 2. 点击弹出层这个链接link,让mask和hidden显示出来
  displayBtn.addEventListener("click", function () {
    hidden.style.display = "block";
    // mask.style.display = 'block';
  });
  // 3. 点击closeBtn就隐藏mask和hidden
  closeBtn.addEventListener("click", function () {
    hidden.style.display = "none";
    // mask.style.display = 'none';
  });
  // 4. 开始拖拽
  //(1)当我们鼠标按下,就获得鼠标在盒子内的坐标
  Drag.addEventListener("mousedown", function (e) {
    var x = e.pageX - hidden.offsetLeft;
    var y = e.pageY - hidden.offsetTop;
    //(2)鼠标移动的时候,把鼠标在页面中的坐标,减去鼠标在盒子内的坐标就是模态框的left和top值
    document.addEventListener("mousemove", move);
    function move(e) {
      hidden.style.left = e.pageX - x + "px";
      hidden.style.top = e.pageY - y + "px";
    }
    //(3)鼠标弹起,就让鼠标移动事件移除
    document.addEventListener("mouseup", function () {
      document.removeEventListener("mousemove", move);
    });
  });
  /*隐藏区结束*/
  /*留言内容区*/
  var upText = document.querySelector(".textarea");
  var addTo = document.querySelector(".abb-text");
  var text = document.querySelector("#memo");
  /*************添加事件*****************/
  addTo.onclick = function () {
    insertHtml(upText.value, '');
    // 添加后清空输入框
    upText.value = '';
    // 焦点放回输入框
    upText.focus();
    saveTodo();
  }
  /*************saveTodo函数****************/
  var saveTodo = function () {
    let todoArr = [];
    let todoJs = {};
    var econTent = document.querySelectorAll('.JS_content');
    for (let index = 0; index < econTent.length; index++) {
      todoJs.name = econTent[index].innerHTML;
      todoJs.finish = econTent[index].classList.contains('finish');
      todoArr.push(todoJs);
      todoJs = {};
    }
    save(todoArr);
  }
  var loadTodo = function () {
    let todoArr = load();
    for (let index = 0; index < todoArr.length; index++) {
      insertHtml(todoArr[index].name, todoArr[index].finish ? 'finish' : '');
    }
  }
  /*********本地持久储存(localStorage)函数*****************************/
  var save = function (arr) {
    /**JSON.stringify(arr) 先将数组转换为字符串     *localStorage.todoText 然后将字符串保存到本地的todoText中*/
    localStorage.todoText = JSON.stringify(arr);
  }
  /**
   *读取函数,把todoText转成数组
   *然后返回数组*/
  var load = function (arr) {
    var arr = JSON.parse(localStorage.todoText);
    return arr;
  }
  /**********************finish样式函数*****************************/
  /**********************按钮点击事件*****************************/
  text.onclick = function () {
    var tg = event.target;
    // 获取父元素下的所有子元素
    var tgKids = tg.parentElement.children;
    /*******************************对复选框的点击事件******************************/
    if (tgKids[0].checked) {
      tgKids[1].classList.add("finish");
    }
    else {
      tgKids[1].classList.remove("finish");
    }
    // 保存更改的样式
    saveTodo();
    /***********************对选择的进行删除********************************************/
    var Select = document.getElementById("delete");
    Select.onclick = function () {
      if (confirm("是否删除所选?")) {
        var check = document.getElementsByName("checkbox");
        for (var i = 0; i < check.length; i++) {
          if (check[i].checked) {
            check[i].parentElement.remove();
            i--;
            // 删除后保存
            saveTodo();
          }
        }
      }
    }
  }
  var insertHtml = function (val, cls) {
    text.insertAdjacentHTML("beforeend",
      `<div class= 'dddd'>
            <input type="checkbox" name='checkbox'>                        
            <span  class='JS_content ${cls}'>${val}</span>       
        </div>`
    )
  }
  loadTodo();
  /*留言内容区 结束*/
  /**本地文件读取的函数**/
  window.onload = function () {
    var text = document.getElementsByName('textarea')[0],
      inputFile = document.getElementsByName('file')[0];
    //上传文件
    inputFile.onchange = function () {
      console.log(this.files);
      var reader = new FileReader();
      reader.readAsText(this.files[0], 'UTF-8');
      reader.onload = function (e) {
        // urlData就是对应的文件内容
        var urlData = this.result;
        text.value = urlData;
      };
    };
  };
  /**本地文件读取的函数*结束**/
  /*左边栏连接*/ 
  function createLocalList() {
  const localList = [
    {
      title: "简单的计算器",
      src: "./html/简单的计算器.html",
    },
    {
      title: "html表格",
      src: "./html/html表格.html",
    },
    {
      title: "js生成随机数",
      src: "./html/js生成随机数.html",
    },
    {
      title: "自动生成220个li(颜色随机)",
      src: "./html/自动生成220个li(颜色随机).html",
    },
    {
      title: "html5代码账号密码备忘录样本",
      src: "./html/html5代码账号密码备忘录样本.html",
    },
    {
      title: "特别的时钟特别的倒计时",
      src: "../html/特别的时钟特别的倒计时.html",
    },
  ];
  return { localList };
}
window.onload = function () {
  const localList = createLocalList();
  const container = document.querySelector("#localList");
  localList.localList.forEach((item) => {
    const a = document.createElement("a");
    a.href = item.src;
    a.target = "_blank";
    a.textContent = item.title;
    container.appendChild(a);
  });
}
  /*左边栏连接结束*/ 
  /**右边收藏网站的函数**/
  // 创建超链接元素
  // 创建超链接元素
  var web = document.getElementById("webList");
  var ul = document.createElement('ul');
  var links = [
    {
      title: "智能翻译",
      src: "https://fanyi.baidu.com"
      //   img: 'https:///fanyi.baidu.com/favicon.ico'
    },
    {
      title: "哔哩哔哩",
      src: "https://www.bilibili.com"
      //   img: 'https://www.bilibili.com/favicon.ico'
    },
    {
      title: "菜鸟教程",
      src: "https://www.runoob.com/"
      //   img: 'https://www.runoob.com/favicon.ico'
    },
    {
      title: "Electron",
      src: "https://www.electronjs.org/zh/docs/latest/"
      //   img: 'https://www.electronjs.org/favicon.ico'
    },
    {
      title: "制作ico图标",
      src: "https://www.bitbug.net"
      //   img: '//www.bitbug.net/favicon.ico'
    },
    {
      title: "Element",
      src: "https://element-plus.org/zh-CN/"
      //   img: 'https://element-plus.org/favicon.ico'
    },
    {
      title: "码云gitee",
      src: "https://gitee.com/"
      //   img: 'https://gitee.com/favicon.ico'
    },
    { url: 'https://act.mihoyo.com/ys/app/interactive-map/index.html?bbs_presentation_style=no_header&lang=zh-cn&utm_source=bbs&utm_medium=mys&utm_campaign=pcicon&_markerFps=24#/map/2?shown_types=NaN,-1084,508,2&center=2008.50,-1084.00&zoom=-3.00', title: '原神大地图' },
    { url: 'https://cn.vuejs.org/', title: 'vue.js' },
    { url: 'https://www.w3ccoo.com/', title: 'w3schools教程' },
    { url: 'https://zh.javascript.info/', title: '现代JS教程' },
    { url: 'https://www.dedexuexi.com/tool/3D/', title: 'CSS3D字体' },
    { url: 'https://le.ouchn.cn/searchCourseList?Keyword=js', title: '终身教育平台' },
    {
      title: "MDN网络文档",
      src: "https://developer.mozilla.org/zh-CN/"
      //   img: 'https://developer.mozilla.org/favicon.ico'
    },
    {
      title: "建站学习网",
      src: "https://www.dedexuexi.com"
      //   img: 'https://www.dedexuexi.com//favicon.ico'
    },
    {
      title: "UI组件",
      src: "https://uiverse.io/switches"
      //   img: 'https://uiverse.io/favicon.ico'
    },
    {
      title: "图标",
      src: "https://www.iconfont.cn/"
      //   img: 'https://www.iconfont.cn/favicon.ico'
    },
    {
      title: "天气预报",
      src: "https://i.tianqi.com/?c=code&id=99"
      //   img: 'https://www.iconfont.cn/favicon.ico'
    }
  ];
  // 将超链接添加到列表
  for (var i = 0; i < links.length; i++) {
    var li = document.createElement('li');
    var a = document.createElement('a');
    var linkText = document.createTextNode(links[i].title);
    a.appendChild(linkText);
    a.title = links[i].title;
    a.href = links[i].url || links[i].src;
    a.target = "_blank";
    li.appendChild(a);
    ul.appendChild(li);
  }
  // 将列表添加到页面
  web.appendChild(ul);
  /**右边收藏网站的函数*结束**/
  /*提示弹窗无需点击的函数**/
  function displayAlert(type, data, time) {
    var prompt = document.createElement("div");
    if (type == "success") {
      prompt.style.width = "200px";
      prompt.style.backgroundColor = "#009900";
    } else if (type == "error") {
      prompt.style.width = "280px";
      prompt.style.backgroundColor = "#990000";
    } else if (type == "info") {
      prompt.style.backgroundColor = " #e6b800";
      prompt.style.width = "600px";
    } else {
      return;
    }
    prompt.id = "prompt";
    prompt.style.textAlign = "center";
    prompt.style.position = "fixed";
    prompt.style.height = "60px";
    prompt.style.marginLeft = "-100px";
    prompt.style.marginTop = "-30px";
    prompt.style.left = "30%";
    prompt.style.top = "30%";
    prompt.style.color = "white";
    prompt.style.fontSize = "25px";
    prompt.style.borderRadius = "20px";
    prompt.style.textAlign = "center";
    prompt.style.lineHeight = "60px";
    if (document.getElementById("") == null) {
      document.body.appendChild(prompt);
      prompt.innerHTML = data;
      setTimeout(function () {
        document.body.removeChild(prompt);
      }, time);
    }
  }
  /**提示弹窗无需点击的函数*结束**/
  // 打开百度和关闭窗口
  var newWindow;
  function openBaidu() {
    newWindow = window.open("http://www.baidu.com", "newWindow", "width=900,height=400,top=200,left=400");
  }
  function closeWindow() {
    if (newWindow) {
      newWindow.close();
    }
  }
</script>
</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/686492.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

人工智能会终结动物实验吗?

从动物爱好者到实验室技术人员&#xff0c;没有人喜欢让动物进行科学试验。 相反&#xff0c;这样做是为了帮助确保药物和其他物质最终对人类使用是安全的。 长期以来&#xff0c;研究人员一直在寻找非动物替代品。人工智能(AI)系统正在加速这项工作。 人工智能在这一领域的…

Redis学习(十二)Redis的三种删除策略

目录 一、背景二、Redis 的三种删除策略2.1 定时删除&#xff08;用CPU换内存空间&#xff09;2.2 定期删除2.3 惰性删除&#xff08;用内存换CPU性能&#xff09; 三、总结 一、背景 我们都知道 Redis 是一种内存数据&#xff0c;所有的数据均存储在内存中&#xff0c;可以通…

LabVIEW缝缺陷图像标注库

LabVIEW缝缺陷图像标注库 开发了一个基于LabVIEW平台构建的船舶焊缝缺陷图像标注库。该库旨在通过高效和简洁的方式处理和标注船舶焊缝缺陷图像&#xff0c;提高缺陷识别的准确性和效率&#xff0c;进而保障船舶的结构安全。 项目背景 在船舶制造过程中&#xff0c;焊接质量…

ActiveMQ 介绍、下载、安装和控制台

ActiveMQ 介绍 Apache ActiveMQ 是一款非常成熟且功能全面的开源消息中间件&#xff0c;由Apache软件基金会维护。它遵循 Java Message Service (JMS) 规范&#xff0c;这意味着它提供了一组标准的 API&#xff0c;允许 Java 应用程序以一种标准化的方式发送和接收消息。 以下…

什么是距离选通型水下三维激光扫描仪?(上)

最近听说了一种水下三维激光扫描仪——距离选通型激光扫描仪&#xff0c;有可能应用于近岸水下目标高分辨率成像。博主之前用过ULS-500水下激光扫描仪&#xff0c;并写了一篇博文观察级水下机器人使用系列之五三维激光扫描仪。ULS-500对水质和环境要求较高&#xff0c;一般应用…

【Java数据结构】详解LinkedList与链表(三)

&#x1f512;文章目录&#xff1a; 1.❤️❤️前言~&#x1f973;&#x1f389;&#x1f389;&#x1f389; 2.无头双向非循环链表的实现 2.1成员属性 2.2成员方法 display——打印链表 size——获取单链表长度 addFirst——头插 addLast——尾插 addIndex——在任…

.NET AI如何从0开始?

你是否在思考如何利用AI为您公司的产品增加智能方向的业务扩展&#xff1f; 或者你是否有思考过怎么去利用AI减少部分工作量&#xff1f; 如果你有类似于上面的问题&#xff0c;想要学习AI&#xff0c;并且您是一名.NET开发工程师&#xff0c;或您是一名弃暗投明的Java转.NET…

MySQL查询相邻两条记录的时间间隔

MySQL查询相邻两条记录的时间间隔。最近需要统计相邻两条记录的时间间隔&#xff0c;筛选出时间间隔大于2min的数据记录。因为是同一张表&#xff0c;又需要查询出相邻的数据&#xff0c;所以最开始想到使用子表来做&#xff0c;分别用t1、t2表示&#xff0c;但是实践后发现查询…

AXI Quad SPI IP核AXI4接口下的三种操作模式

当选择Enable Performance Mode选项时&#xff0c;AXI4接口包括在内。在该模式下&#xff0c;IP核可以在增强模式下操作&#xff08;未选择启用XIP模式&#xff09;或XIP模式&#xff08;选择启用XIP模式&#xff09;。在性能模式下&#xff0c;AXI4接口用于在DTR和DRR位置的突…

《web应用技术》第11次课后作业

课后练习&#xff1a; 1、验证过滤器进行权限验证的原理。 2、将自己之前的项目&#xff0c;加上过滤器验证功能。参考以下文章&#xff1a; 采用JWT令牌和Filter进行登录拦截认证-CSDN博客 3、Apifox的使用 了解Apifox的工具特点和使用方法&#xff0c;使用Apifox辅助生成…

【计算机网络】计算机网络的组成与功能

计算机网络的组成与功能 导读一、计算机网络的组成1.1 从组成方式上1.1.1 硬件1.1.2 软件1.1.3 协议 1.2 从工作方式上1.3 从功能组成上 二、计算机网络的功能2.1 数据通信2.2 资源共享2.3 分布式处理2.4 提高可靠性2.5 负载均衡2.6 其它 结语 导读 大家好&#xff0c;很高兴又…

vue2+elementui,动态生成的表单校验

话不多,先上一段视频,看看是不是你们需要的效果 elementui动态生成表单校验 附上代码 <template><div class"home"><div class"home-box"><!-- <menuHtml></menuHtml> --><div class"home-div"><…

MySQL 存储过程(二)

本篇继续介绍MySQL存储过程的相关内容。 目录 一、if语句 二、case 三、循环语句 while loop repeat 一、if语句 在存储过程中&#xff0c;可以使用if语句进行条件判断&#xff0c;其语法结构如下&#xff1a; if 判断语句 then 逻辑语句..... elseif 判断语句 then 逻…

JavaScript入门宝典:核心知识全攻略(上)

文章目录 前言一、JavaScript的定义二、JavaScript的使用方式1. 行内式&#xff08;主要用于事件&#xff09;2. 内嵌式3. 外链式 三、变量和数据类型1. 定义变量2. JavaScript注释3. 数据类型4. 变量命名规范5. 匈牙利命名风格 四、函数定义和调用1. 函数定义2. 函数调用3. 定…

ctfshow-web入门-命令执行(web30-web36)

目录 1、web30 2、web31 3、web32 4、web33 5、web34 6、web35 7、web36 命令执行&#xff0c;需要严格的过滤 1、web30 代码差不多&#xff0c;就是过滤的东西变多了&#xff1a; preg_match("/flag|system|php/i", $c) 这里不让用 system &#xff0c;我们…

宝贝,带上WebAssembly,换个姿势来优化你的前端应用

❝ 在你没崛起之前&#xff0c;脸是用来丢的 ❞ 大家好&#xff0c;我是「柒八九」。一个「专注于前端开发技术/Rust及AI应用知识分享」的Coder ❝ 此篇文章所涉及到的技术有 WebAssembly Rust Web Worker( comlink) wasm-pack Photon ffmpeg.wasm 脚手架生成前端项目 ❞ 因为&…

Yolo-v5模型训练速度,与GeForce的AI算力描述

1.GeForce RTX3070 Ti官网参数&#xff1a; GeForce RTXTM 3070 Ti 和 RTX 3070 显卡采用第 2 代 NVIDIA RTX 架构 - NVIDIA Ampere 架构。该系列产品搭载专用的第 2 代 RT Core &#xff0c;第 3 代 Tensor Core、全新的 SM 多单元流处理器以及高速显存&#xff0c;助您在高性…

Hi3519DV500 学习摘录

文章目录 一、问题1、autoreconf2、open-vm-tools 安装3、NFS4、pushd: not found 一、问题 1、autoreconf automake version mismatch | AM_INIT_AUTOMAKE | 版本不匹配 autoreconf ./configure make2、open-vm-tools 安装 open-vm-tools 安装 # 用于安装和升级的命令是相…

Codeforces Round 951 (Div. 2) C、D(构造、线段树)

1979C - Earning on Bets 构造题&#xff1a;观察到k范围很小&#xff0c;首先考虑最终硬币总数可以是多少&#xff0c;我们可以先假设最终的硬币总数为所有k取值的最小公倍数&#xff0c;这样只需要满足每个结果添加1枚硬币即可赚到硬币。 // Problem: C. Earning on Bets //…

​​​​【动手学深度学习】残差网络(ResNet)的研究详情

目录 &#x1f30a;1. 研究目的 &#x1f30a;2. 研究准备 &#x1f30a;3. 研究内容 &#x1f30d;3.1 残差网络 &#x1f30d;3.2 练习 &#x1f30a;4. 研究体会 &#x1f30a;1. 研究目的 了解残差网络&#xff08;ResNet&#xff09;的原理和架构&#xff1b;探究残…