网页端操作提示「msg.js」库简介

这段时间我正在完成我的第一本个人图书,期间做了很多的案例,最近需要在网页端完成一个关于「恶意文本检测」的案例,为了让该案例表现的更加易用简洁、对用户友好,我需要在页面中添加一些用户操作提示信息,比如「正在加载」、「加载失败」、「加载成功」等信息提示,这些功能如果是在微信小程序上实现,那很方便,直接调用 wx.showModal()等方法即可,但是要在网页端实现该功能,就得依赖其他第三方JS和CSS了,在本文中,我们就来介绍一个库,它允许我们仅使用一个 <script/>标签引入其对应的资源文件,就可以简单快捷的使用其功能,请看效果:

图1 - 恶意文本检测用户操作提示

参考资料

  1. gitee链接:https://gitee.com/mail_osc/msg#http://res.weiunity.com/msg/demo.html

1. 快速体验

关于该案例的演示demo,大家可以参考如下两个网址:

  1. msg官方demo
    演示网址:http://res.weiunity.com/msg/demo.html
    效果图:
图2 - msg demo官方演示案例

  1. 个人网站关于恶意文本检测的案例
    演示网址:https://www.shipudong.com/toxicity/view/index.html
    效果图:
图3 - 恶意文本检测演示案例

2. 快速使用

  1. 引入msg.js库
<script src="https://res.weiunity.com/msg/msg.js"></script>
  1. 使用库
  • 信息提示,2.5秒后自动关闭
msg.info('Hello Msg')
  • 成功提示,1.5秒后自动关闭
msg.success('操作成功')
  • 失败提示,2.5秒后自动关闭
msg.failure('操作失败');
  • 加载提示,图中会有一张动图一直转圈,它不会自动关闭,所以必须与 msg.close()配合使用
msg.loading('加载中');
  • 关闭提示信息
msg.close();

该命令主要用来配合 msg.loading()使用,用于关闭加载中的提示。其他的 msg.info()、 msg.success()、msg.failure()这些也可以用该命令进行关闭,不过有点多此一举,因为上述这些命令本身设置有自动关闭的时间。

  • 当msg弹出的提示信息消失之后,转去执行其他命令
msg.info('Hello Msg', function(){
    alert(123);
});

浏览器首先会弹出「Hello MSg」的提示信息,2.5秒之后该信息消失,浏览器会继续通过alert命令弹出「123」。

  • 普通弹出框
//普通弹出框。普通弹出窗只是显示内容,所以直接吧内容传入就可以了
msg.popups('我是弹出窗口,可以传入文字、也可以传入html');
  • 自定义弹出框
//自定义弹出框。自定义,传入了一个自定义属性,内容文本也算是其中的一个属性。改弹出层自动会居中显示。
msg.popups({
    text:'Hallo,是管雷鸣创造了我!',    //弹出窗显示的内容,支持html
    height:'100px',        //弹出层显示的高度。不传默认是 auto。 传入如 100px 、 10rem 、 10% 等 
    width:'90%',        //弹出层显示的宽度。不传默认是 90%。 传入如 100px 、 10rem 、 10% 等
    close:true,            //是否显示右上角的关闭按钮,不传默认是true,显示关闭按钮
    background:'#2e2d3c',    //背景颜色。十六进制颜色编码。不传默认是 '#2e2d3c'
    opacity:92,            //弹出层的透明度,默认是92, 取值0~100,0是不透明,100是全部透明
    padding:'3px',        //弹出层四周留的空隙,默认是1rem。可传入如 10px 、 1rem 等
});
  • 定义弹出框的位置
//定义弹出层的位置。注意,top跟bottom如果同时存在,那么bottom将会不起作用。
msg.popups({
    text:'弹窗的内容',    //弹出窗显示的内容,支持html
    top:'30%',            //弹出层距离顶部的距离。可以传入如 30%、 5rem、 10px 等。如果设置了此项,那么弹出层上下居中效果将不会有
    left:'5%',            //弹出层距离浏览器左侧的距离。传入如30%、 5rem、 10px 等。如果设置了此项,那么弹出层左右居中效果将不会有
    bottom:'10px',        //弹出层距离底部的距离。传入如30%、 5rem、 10px 等。如果设置了此项,那么弹出层左右居中效果将不会有
});

3. 案例展示

了解完有关msg的用法之后,我们来看一个简单的案例。
首先,我们来明确一下该案例的主要功能:页面中会有一个 <button/>标签,当用户点击该按钮时,会去请求一个训练好的格式为TF.js layers的模型文件并给用户弹出「正在请求信息」的操作提示,该模型文件的地址如下所示:https://www.shipudong.com/otherFiles/DLModels/model.json
若请求成功,则将该模型的相关信息打印在控制台并关闭刚刚弹出的加载信息提示;若请求失败,则显示错误信息,同时也关闭刚刚弹出的加载信息提示。

图4 - 模型文件概览

接下来,请看具体代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>msg演示案例</title>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
    <script src="https://res.weiunity.com/msg/msg.js"></script>
</head>
<body>
<button id="btn">获取数据</button>

<script>
    $(function (){
        $("#btn").click(function (){
            msg.loading("正在请求信息!")
            $.ajax({
                url:"https://www.shipudong.com/otherFiles/DLModels/model.json",
                success(res){
                    msg.close()
                    console.log(res)
                },error(err){
                    msg.close()
                    console.log(err)
                }
            })
        })
    })
</script>
</body>
</html>

案例很简单,故关于上述代码的具体解释这里不在赘述。

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

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

相关文章

最适合家用的洗地机哪个牌子好?2023洗地机推荐

洗地机是目前众多清洁工具中的热门之选&#xff0c;我身边很多朋友都选择了洗地机来处理家居清洁&#xff0c;一说一&#xff0c;洗地机可以处理干湿垃圾&#xff0c;还都有一键自清洁功能&#xff0c;用起来确实方便简单。不过&#xff0c;市面上的洗地机参差不齐&#xff0c;…

QT软件开发: 获取CPU序列号、硬盘序列号、主板序列号 (采用wmic命令)

[TOC](QT软件开发: 获取CPU序列号、硬盘序列号、主板序列号 (采用wmic命令)) [1] QT软件开发: 获取CPU序列号、硬盘序列号、主板序列号 (采用wmic命令) https://blog.51cto.com/xiaohaiwa/5380259 一、环境介绍 QT版本: 5.12.6 环境: win10 64位 编译器: MinGW 32 二、功…

Presto

Presto Presto基本介绍 前言 Presto是一款Facebook开源的MPP架构的OLAP查询引擎&#xff0c;可针对不同数据源执行大容量数据集的一款分布式SQL执行引擎。因为工作中接触到Presto&#xff0c;研究它对理解SQL Parser、常见算子的实现&#xff08;如SQL中table scan,join,agg…

OA办公系统能为企业带来什么好处?

在企业办公管理软件当中&#xff0c;OA系统一直都是最受欢迎也是很多大中型企业不可或缺的管理系统。企业OA办公系统是将计算机、通信等现代化技术运用到传统办公方式&#xff0c;进而形成的一种新型办公方式。办公自动化利用现代化设备和信息化技术&#xff0c;代替办公人员传…

RabbitMQ之工作队列 ( Work Queues )

Work Queues 1. 轮询分发消息1.1 抽取工具类1.2 启动两个工作线程1.3 启动一个发送线程1.4 结果展示 2. 消息应答2.1 概念2.2 自动应答2.3 消息应答的方法2.4 Multiple 的解释2.5 消息自动重新入队2.6 消息手动应答代码2.7 手动应答效果演示 3. RabbitMQ 持久化3.1 概念3.2 队列…

Golang每日一练(leetDay0064) 轮转数组、颠倒二进制位

目录 189. 轮转数组 Rotate Array &#x1f31f;&#x1f31f; 190. 颠倒二进制位 Reverse Bits &#x1f31f; &#x1f31f; 每日一练刷题专栏 &#x1f31f; Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 Java每日一练 专栏 189. 轮转数组 Rotate Ar…

免费使用GPT-4.0?【AI聊天 | GPT4教学】 —— 微软 New Bing GPT4 申请与使用保姆级教程

目录 认识 New Bing 2. 注册并登录 Microsoft 账号 3. 如何免科学上网使用 New Bing&#xff1f; 4. 加入 WaitList 候补名单 5. 使用 New Bing&#xff01; 6. 使用 Skype 免科学上网访问 New Bing&#xff01; 7. 在 Chrome 浏览器中使用 New Bing&#xff01; 8. 总…

交直流一体化电源系统-交流电源自动测试系统ATECLOUD-Power

现代社会离不开电力&#xff0c;而电力供应的质量和可靠性&#xff0c;对于各个领域的发展都有着至关重要的作用。交直流一体化电源系统作为一种新型的供电方案&#xff0c;不仅具备高度的适应性、可靠稳定性以及节能环保性等诸多优势&#xff0c;还能为各行各业的市场提供更加…

MySQL基础(二十四)索引的数据结构

1 为什么使用索引 顺序查询和数据使用二叉树结构再进行查询,如图&#xff1a; 2 索引及其优缺点 2.1 索引概述 MySQL官方对索引的定义为&#xff1a;索引&#xff08;Index&#xff09;是帮助MySQL高效获取数据的数据结构。 **索引的本质&#xff1a;**索引是数据结构。你…

Lombok工具 : 常用注解介绍 (全)

文章目录 介绍引入Maven依赖常用的注解 NoArgsConstructor/AllArgsConstructorRequiredArgsConstructorGetter/SetterToString/EqualsAndHashCodeDataBuilderAccessors 其他注解 SneakyThrowsValueCleanupNotNullSynchronizedLog、Log4j、Slf4j、Log4j2、CommonsLog、XSlf4j等…

Type-C显示器是什么,Type-C显示器的5大优势

在显示器领域内&#xff0c;USB Type-C接口还处于发展阶段&#xff0c;目前已经在新推出的一些高端显示器和旗舰显示器中有配置。USB Type-C接口的出现&#xff0c;将会形成以显示器为核心的桌面解决方案&#xff0c;用户可以把任何笔记本、手机、平板等等的画面转移到一台大屏…

docker php安装redis扩展

有这么一个情况&#xff0c;我在docker中&#xff0c;安装了镜像&#xff0c;也启动了容器&#xff0c;容器有&#xff1a;nginx、mysql、redis、php 是一个基本的开发环境 容器启动成功&#xff0c;我们先连接一下&#xff0c;看看是否正常。 先保证这些都ok&#xff0c;我们…

数据可视化工具 - ECharts以及柱状图的编写

1 快速上手 引入echarts 插件文件到html页面中 <head><meta charset"utf-8"/><title>ECharts</title><!-- step1 引入刚刚下载的 ECharts 文件 --><script src"./echarts.js"></script> </head>准备一个…

一顿饭的事儿,搞懂了Linux5种IO模型

大家好&#xff0c;我是老三&#xff0c;人生有三大难题&#xff0c;事业、爱情&#xff0c;和 ——这顿吃什么&#xff01; 人在家中躺&#xff0c;肚子饿得响&#xff0c;又到了不得不吃的时候&#xff0c;这顿饭该怎么吃&#xff1f;吃什么呢&#xff1f; Linux里有五种I…

chatgpt搜索脚本

安装地址 https://greasyfork.org/zh-CN/scripts/459997 注意事项 &#xff01;&#xff01;注意&#xff1a;如果你在360相关浏览器上使用插件。360搜索将不会生效&#xff0c;因为已被浏览器禁用在so.com网址上使用。 &#xff01;&#xff01;尽量选择tampermonkey脚本管…

Datax的使用说明及入门操作案例演示

1.DataX DataX 是阿里云 DataWorks数据集成 的开源版本&#xff0c;在阿里巴巴集团内被广泛使用的离线数据同步工具/平台。DataX 实现了包括 MySQL、Oracle、OceanBase、SqlServer、Postgre、HDFS、Hive、ADS、HBase、TableStore(OTS)、MaxCompute(ODPS)、Hologres、DRDS, dat…

第四十九章 Unity UI适配器组件

首先&#xff0c;我们介绍内容大小适配器 (Content Size Fitter)组件。 我们新建一个“SampleScene6.unity”场景&#xff0c;然后添加一个Text UI元素&#xff0c;让其居中显示&#xff0c;并且尺寸设置为50*30。 由于我们设置Text的尺寸在水平方向上面太小&#xff0c;也就是…

计算机毕业论文内容参考|基于神经网络的网络安全态势感知技术研究

文章目录 导文文章重点摘要前言绪论课题背景国内外现状与趋势课题内容相关技术与方法介绍技术分析技术设计技术实现总结与展望导文 基于神经网络的网络安全态势感知技术研究 文章重点 摘要 随着互联网的快速发展,网络攻击的频率和复杂度也在逐年增加。为了更好地保护信息系统…

【Python】【进阶篇】27、Django url标签详解

目录 27、Django url标签详解1. url标签基本使用2. 给定参数的动态url 27、Django url标签详解 在 Django 的模板语言中除了我们前面章节介绍过的 if 标签和 for 标签之外&#xff0c;还有许多我们时常用到标签&#xff0c;比如 url 标签。 1. url标签基本使用 Django 的模板…

4.6k Star,SpringBoot+Vue+App+硬件实现的智能家居系统,一套带走

今天&#xff0c;推荐一个智能家居系统项目。这是我目前见过的最好的智能家居系统项目&#xff0c;功能完整&#xff0c;代码结构清晰。值得推荐。 4.6k Star&#xff0c;SpringBootVueApp硬件实现的智能家居系统&#xff0c;一套带走 简介 FastBee是一个简单易用的物联网平…