首页 > 其他分享 >HTML5 dialog标签简单使用

HTML5 dialog标签简单使用

时间:2023-12-20 16:12:02浏览次数:27  
标签:const dialog 标签 modal1 HTML5 modal addEventListener console

 HTML5 dialog标签简单使用

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      dialog#test {
        width: 50vw;
        height: 30vh;
      }
      dialog#test:modal {
        background-color: rgb(160, 242, 242);
      }
      dialog#test::backdrop {
        background: rgba(0, 0, 0, 0.3);
      }
    </style>
  </head>
  <body>
    <button onclick="test.showModal()">显示模态框</button>
    <button onclick="test.show()">显示dialog标签内容</button>

    <!-- dialog标签上添加open属性 显示对话框 -->
    <dialog id="test">
      <h1>title</h1>
      <button onclick="test1.showModal()">打开第二层</button>
      <button onclick="test.close()" value="">取消</button>
    </dialog>
    <dialog id="test1">
      <form method="dialog" id="form">
        <input type="text" name="name" />
        <button type="submit" value="ok">确定</button>
        <button onclick="this.parentNode.close()">取消</button>
      </form>
    </dialog>
  </body>
</html>

<script>
  const modal = document.querySelector("#test");
  modal.addEventListener("cancel", (e) => {
    console.info("esc");
  });
  modal.addEventListener("close", (e) => {
    console.info(modal.returnValue, "closed");
  });

  const modal1 = document.querySelector("#test1");
  modal1.addEventListener("click", (e) => {
    if (e.target.nodeName.toLowerCase() == "dialog") {
      modal1.close();
    }
  });
  modal1.addEventListener("close", (e) => {
    const rtval = modal1.returnValue;
    console.info("modal1返回值", rtval);
    if (rtval == "ok") {
      const formData = new FormData(document.querySelector("#form"));
      console.log(formData.get("name"));
    }
    modal1.returnValue = "";
  });
</script>

 

 

 

 

标签:const,dialog,标签,modal1,HTML5,modal,addEventListener,console
From: https://www.cnblogs.com/caroline2016/p/17916709.html

相关文章

  • HTML5新增标签及API
    之前有一天看到了这样的一段代码,居然可以使用dom的id直接调用方法和获取属性,真是刷新了我的认知了。<div><pid="content">aa</p><buttononclick="console.log(content.innerText)">打印内容</button></div> 点击按钮,控制台就可以打印出aa字符串习惯写后端的我前......
  • 前端标签
    前端标签是用于描述网页结构和内容的标签。它们可以分为以下几类:文档声明、文档结构、功能标签这类标签用于描述文档的类型、结构和功能。例如:<!DOCTYPEhtml>:声明文档的类型<html>:定义文档的根元素<head>:定义文档的头部<body>:定义文档的主体<title>:定义文档的标题<link>:......
  • html标签里面修改title样式
    默认的title不能设置样式,但我们可以通过js和css实现title的功能。CSS样式:<style>/*修改提示框*/#mytitle{position:absolute;color:#ffffff;max-width:160px;font-size:14px;padding:4px;background:rgba(......
  • Flutter Dialog Toast 弹窗
    AlertDialogshowDialog(barrierDismissible,//点击遮罩背景是否关闭弹窗context:context,builder:(context){returnAlertDialog(title:constText('Alert弹窗'),content:constText('Alert弹窗内容'),actions:[TextBu......
  • HighCharts 以轴标签为标签+蓝色圆圈跟随鼠标移动
    需求:画一个蓝色圆圈跟随鼠标移动,点击图表并保存这个点,点的右侧有以轴标签为标签的标签分析:调用load事件,使用renderer画个圆圈跟随鼠标,点击图标保存点用click事件,在click事件里使用renderer画一个圆和标签,标签以轴为单位解决:源代码:示例:HighCharts以轴标签为标签及蓝色圆圈跟随鼠......
  • C++ Qt开发:自定义Dialog对话框组件
    Qt是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍自定义Dialog组件的常用方法及灵活运用。在之前的文章中笔者已经为大家展示了默认Dialog组件的使......
  • VUE框架指令语法与v-bind实现标签属性内部动态------VUE框架
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><title>Document</title>......
  • C++ Qt开发:标准Dialog对话框组件
    Qt是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍标准对话框QInputDialog、QFileDialog这两种对话框组件的常用方法及灵活运用。在Qt中,标准对话......
  • 机器学习的方法主要可以分为以下几类¹²³: 1. **监督学习**:在监督学习中,我们有一个
    机器学习的方法主要可以分为以下几类¹²³:1.**监督学习**:在监督学习中,我们有一个标记的数据集,我们的目标是训练一个模型,使其能够预测新数据的标签。常见的监督学习算法包括:  -线性回归  -逻辑回归  -支持向量机(SVM)  -最近邻居(KNN)  -决策树......
  • video标签 视频暂停播放的问题,vue中同一个video标签中多个视频的播放问题
    获取后来返回来的视频地址放在了elment的走马灯里面进行自动切换要求:实现双击在弹窗中播放,弹窗大小【1000*550】(第一点)原视频和弹窗内视频互斥,不可同时播放(第二点)上传多个视频,左右切换时,不可同时播放(第三点)鼠标移入走马灯不自动轮播,点击播放时不自动轮播,鼠标移出,走马灯开始自动......