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

news2024/12/23 17:51:55

这段时间我正在完成我的第一本个人图书,期间做了很多的案例,最近需要在网页端完成一个关于「恶意文本检测」的案例,为了让该案例表现的更加易用简洁、对用户友好,我需要在页面中添加一些用户操作提示信息,比如「正在加载」、「加载失败」、「加载成功」等信息提示,这些功能如果是在微信小程序上实现,那很方便,直接调用 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>

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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【HMS Core】Health Kit想要查看数据是来自用户的哪个设备,如何查看?

【问题描述1】 如何查看运动健康数据是来自用户的哪个设备&#xff1f; 【解决方案】 可以通过返回的数据中携带的dataCollectorId来查询提供数据的设备信息&#xff1a; 请求示例&#xff08;以查询睡眠记录详情为例&#xff09;&#xff1a; 1、查询睡眠记录并关联睡眠状…

后端使用phantomjs对页面进行截图

最近碰到这样一些需求&#xff0c;后端需要对某个图表页面进行动态截图&#xff0c;将截图通过邮件发送到指定邮箱进行每日提醒。 这就需要用到无界浏览器进行此类操作。常见的无界浏览器有以下几种&#xff0c;知识来源于chatgpt3.5&#xff1a; Headless Chrome - Google C…

NC – 靶向特定功能的神经元细胞类型治疗脑部疾病

神经元是大脑的主要功能单位。这些细胞中传递的信号——以电波的形式——导致所有思维、感觉、运动、记忆和情感。 塞达斯-西奈医学中心的研究人员利用计算机模型来弥合“试管”神经元数据和这些细胞在大脑中的功能之间的差距。他们的研究有助于开发靶向特定功能的神经元类型治…

如何吸引主流媒体报道,强势刷屏?

传媒如春雨&#xff0c;润物细无声&#xff0c;大家好 五一小长假已经过去好几天了&#xff0c;大家渐渐的从假期舒适的闲暇转到正常的工作生活中了&#xff0c;但利用五一热点宣传的余温还在继续&#xff0c;今天胡老师就i注意到一篇题为&#xff1a;【强势刷屏&#xff01;“…

【笔记】【HTTP】《图解HTTP》第2章 简单的HTTP协议

前言 有输入就要有产出&#xff0c;该笔记是本人看完《图解HTTP》后对每章涉及到的知识进行汇总博客将会已书的每章为一篇发布&#xff0c;下一篇博客发布时间不确定笔记中有些个人理解后整理的笔记&#xff0c;可能有所偏差&#xff0c;也恳请读者帮忙指出&#xff0c;谢谢。…

Java每日一练(20230509) 下一个排列、分隔链表、随机指针链表

目录 1. 下一个排列 &#x1f31f;&#x1f31f; 2. 分隔链表 &#x1f31f;&#x1f31f; 3. 复制带随机指针的链表 &#x1f31f;&#x1f31f; &#x1f31f; 每日一练刷题专栏 &#x1f31f; Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 Java每日…

操作系统—— 精髓与设计原理--期末复习

一、计算机系统概述 1、基本构成 计算机有四个主要的结构化部件&#xff1a; ①处理器&#xff08;Processor&#xff09;&#xff1a;控制计算机的操作&#xff0c;执行数据处理功能。当只有一个处理器时&#xff0c;它通常指中央处理器&#xff08;CPU&#xff09; ②内存…

VINS_FUSION的EVO评价

一、虚拟机和windows桌面可以复制粘贴的方法 1&#xff09;sudo apt-get autoremove open-vm-tools 2&#xff09;sudo apt-get insall open-vm-tools-desktop 3&#xff09;reboot 二、算法精度评价工具EVO 安装参考博文&#xff1a; 视觉SLAM基础&#xff1a;算法精度评…

计算机二级java经典题目及其解析

解析: 栈的存储空间为S(1:50)&#xff0c;初始状态为top51&#xff0c;表示栈的可用空间从S(1)到S(50)&#xff0c;栈顶指针初始指向S(51)的位置&#xff0c;表示当前栈为空。 经过一系列正常的入栈与退栈操作后&#xff0c;top50&#xff0c;表示栈顶指针已经向下移动了一个位…

微信小程序学习实录6(百度经纬度采集、手动调整精度、H5嵌入小程序、百度地图jsAPI、实时定位、H5更新自动刷新)

百度经纬度采集 一、H5页面开发1.手机端外部JS库2.地图容器3.数据表单4.地图加载5.回调封装函数自动定位 二、微信小程序核心代码1.lnglat.wxml2.lnglat.js3.lnglat.json 三、版本发布遇见的问题 一、H5页面开发 1.手机端外部JS库 viewport&#xff0c;手机端的适配&#xff…

【软考数据库】第九章 非关系型数据库NOSQL

目录 9.1 概述 9.2 理论基础 9.3 分区方法 9.4 存储分布 9.5 查询模型 9.6 存储模式 前言&#xff1a; 笔记来自《文老师软考数据库》教材精讲&#xff0c;精讲视频在b站&#xff0c;某宝都可以找到&#xff0c;个人感觉通俗易懂。 9.1 概述 传统的关系数据库在应付Web …

Listener监听器,实现一个显示在线用户人数

Listener监听器&#xff0c;实现一个显示在线用户人数 每博一文案 关于后半身&#xff0c;脾气越温&#xff0c;福报越深。 师傅说&#xff1a;惜命最好的方式不是养生&#xff0c;而是管好自己的情绪。 坏毛病都是惯出来的&#xff0c;但好脾气都是磨出来的&#xff0c;与人生…

《小钊记》项目启动前期工作相关记录:VUE、powerdesigner建模、虚拟机密码重置、代码生成

目录 VUE镜像基本命令vue 不是内部或外部命令路径配置路由 powerdesigner 建模栏位添加注释id设置自增导出sql 虚拟机root密码重置&#xff08;centos7&#xff09;生成代码工具安装EasyCode插件连接数据库生成代码可以自定义模板复制现有的模板&#xff0c;在其基础上进行改造…

MathType7简体中文版数学公式编辑器下载安装教程

MathType一款专业的数学公式编辑器&#xff0c;理科生专用的必备工具&#xff0c;可应用于教育教学、科研机构、工程学、论文写作、期刊排版、编辑理科试卷等领域。2018年2月&#xff0c;MathType 7简体中文版正式发布&#xff0c;给用户带来全新的体验。MathType 是Windows和M…

二分查找的两种形式(C++实现)

现在有一个这样的问题需要求解 题目要求&#xff1a;给定一个n个元素的&#xff08;升序&#xff09;整型数组nums和一个目标值target&#xff0c;写一个函数搜索nums中的target&#xff0c;如果目标值存在返回下标&#xff0c;否则返回-1 示例 输入: nums [-1,0,3,5,9,12] …

解密银行客户经理展业利器系列一:商机共享、创收增长

2023年银行业面临存款、贷款、利润三大变局&#xff0c;与此同时&#xff0c;商业银行的数字化转型正延展至前台建设&#xff0c;期望通过科技手段布局应对&#xff0c;数字化重装身处一线的客户经理&#xff0c;带动单位时间创收提升&#xff0c;更有力地支撑银行业务战略发展…

数字设计小思 - 谈谈复位那些事

写在前面 本系列整理数字系统设计的相关知识体系架构&#xff0c;为了方便后续自己查阅与求职准备。在FPGA和ASIC设计中&#xff0c;对于复位这个问题可以算是老生常谈了&#xff0c;但是也是最容易忽略的点。本文结合FPGA的相关示例&#xff0c;再谈一谈复位。 &#xff08;本…

带着Java基础对比学习C#基本语法

文章目录 一.引包二.构造函数三.析构函数四.C#数据类型1.值类型2.引用类型分类 五.加框(boxing)和消框(unboxing&#xff09;六.运算符七.控制语句八.类的继承九.方法参数的种类十. 操作符重载十一.this关键字十二.类的多态十三.抽象类和抽象方法十四.密封类和密封方法十五.接口…

Web3中文|乱花渐欲meme人眼,BRC-20总市值逼近10亿美元

现在的Web3加密市场&#xff0c;用“乱花渐欲meme人眼”来形容再合适不过了。 何为meme&#xff1f; “meme”这个词大概很多人都不知道如何正确发音&#xff0c;并且一看到它就会和狗狗币Dogecoin等联系在一起。那它究竟从何而来呢&#xff1f; Meme&#xff1a;[mi:m]&#x…

算法:迷宫问题

描述 定义一个二维数组 N*M &#xff0c;如 5 5 数组下所示&#xff1a; int maze[5][5] { 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, }; 它表示一个迷宫&#xff0c;其中的1表示墙壁&#xff0c;0表示可以走的路&#xff0c;只能横着走或…