driver.js 扩展下次“不再提示”功能

文档地址:https://github.com/kamranahmedse/driver.js
官方demo:https://kamranahmed.info/driver.js/

/*** @Title: 页面引导 ……* @Author: JackieZheng* @Date: 2023-08-16 10:43:31* @LastEditTime: 2023-08-16 10:55:08* @LastEditors:* @Description:* @FilePath:utils\\driver.js*/
import { driver } from 'driver.js'
import 'driver.js/dist/driver.css'
import { ElMessage, ElMessageBox } from 'element-plus'
import store from '../store'const driverObj = driver({popoverClass: 'driverjs-theme',showProgress: true,opacity: 0.1,animate: true,allowClose: true, // 是否允许点击遮罩时关闭doneBtnText: '我知道了',closeBtnText: '跳过', //  关闭按钮文案nextBtnText: '下一步', // 下一步的按钮文案prevBtnText: '上一步', // 上一步的按钮文案keyboardControl: true, // 允许通过键盘控制(退出关闭,箭头键移动)progressText: '{{current}} / {{total}}',guidName:'',/***@description: 准备开始退出事件*@author: JackieZheng*@date: 2023-08-16 12:47:38*/onDestroyStarted: () => {// doSomethingdriverObj.destroy() // 自理完后,必须要重新执行退出},/***@description: 点击关按钮或外部关闭*@author: JackieZheng*@date: 2023-08-16 12:47:14*/onCloseClick: () => {// doSomethingdriverObj.destroy() // 处理完后,必须要重新执行退出},/***@description: 彻底退出事件*@author: JackieZheng*@date: 2023-08-16 12:47:38*/onDestroyed: () => {// doSomethingdriverObj.destroy() // 处理完后,必须要重新执行退出},/***@description: 设置某个页面显示引导*@author: JackieZheng*@para: guidName 当前页面 参数*@date: 2023-08-16 14:05:31*/ShowGuidesSet: (guidName) => {const guides = store.state.driverGuidesguides[guidName] = truestore.commit('CacheDriverGuides', guides)},/***@description: 不再展示某个页面的引导*@author: JackieZheng*@date: 2023-08-16 14:05:06
*/HideNextTime: (guidName) => {const guides = store.state.driverGuidesguides[guidName] = falsestore.commit('CacheDriverGuides', guides)},/***@description: 最后一步 改下次是否提示*@author: JackieZheng*@date: 2023-10-04 13:20:07*/onHighlighted : () => {if (!driverObj.hasNextStep()) {let preBtn = document.querySelector('.driver-popover-prev-btn')let btn = document.createElement('button')btn.textContent = '不再提示'btn.style.cssText ='background-color: #ff9800;border: 2px solid #ff9800;'btn.addEventListener('click', ()=> {driverObj.getConfig().HideNextTime(driverObj.getConfig().guidName)driverObj.destroy()})let btnBox = preBtn.parentNodebtnBox.insertBefore(btn, preBtn)btnBox.removeChild(preBtn)}},/***@description: 检测是否 不再提示*@author: JackieZheng*@date: 2023-10-04 13:32:50*/enableShow:()=>{return store.state.driverGuides[driverObj.getConfig().guidName] !== false}})export default driverObj

使用

<script setup name="lbooks">import driverObj from '../utils/driver'/* 设置引导 提示步骤及内容 */const driverSteps = [{element: '.obj_install',popover: {title: '提示',showButtons: false,description:'本面有些内容需要喝杯水能正常显示'}}]/* 启动driver */onMounted(() => {driverObj.getConfig().showProgress = falsedriverObj.getConfig().guidName = 'Ebk'driverObj.getConfig().ShowGuidesSet('Ebk') // 调试时 强制启用引导if (driverObj.getConfig().enableShow()) {driverObj.setSteps(driverSteps)driverObj.drive()}})
</script>

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

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

相关文章

Java日期的学习篇

关于日期的学习 目录 关于日期的学习JDK8以前的APIDate Date常用APIDate的API应用 SimpleDateFormatSimpleDateFormat常用API测试 反向格式化(逆操作)测试 训练案例需求(秒杀活动)实现 Calendar需求痛点常见API应用测试 JDK8及以后的API(修改与新增)为啥学习(推荐使用)新增的AP…

全志ARM926 Melis2.0系统的开发指引⑥

全志ARM926 Melis2.0系统的开发指引⑥ 编写目的9. 系统启动流程9.1. Shell 部分9.2.Orange 和 desktop 部分9.3. app_root 加载部分9.4. home 加载部分 10. 显示相关知识概述10.1. 总体结构10.2. 显示过程10.3. 显示宽高参数关系 -. 全志相关工具和资源-.1 全志固件镜像修改工具…

03.requests入门

1、requests概述 ​ 前面的课程中我们了解了requests模块是一个网络请求模块&#xff0c;可以帮助我们模拟成客户端去请求服 务器的数据。我们今天就是主要针对这个模块进行学习。 ​ 我们可以在浏览器中抓取到这些请求与响应的内容&#xff0c;那么我们可以“伪造”请求吗&a…

JavaEE-网络编程套接字(UDP/TCP)

下面写一个简单的UDP客户端服务器流程 思路&#xff1a; 对于服务器端&#xff1a;读取请求&#xff0c;并解析–> 根据解析出的请求&#xff0c;做出响应(这里是一个回显&#xff0c;)–>把响应写回客户端 对于客户端&#xff1a;从控制台读取用户输入的内容–>从控制…

Python综合案例:学生管理系统

目录 需求说明&#xff1a; 功能&#xff1a; 创建入口函数&#xff1a; 实现菜单函数&#xff1a; 实现增删查操作&#xff1a; 1. 新增学生 2. 展示学生 3. 查找学生 4. 删除学生 加入存档读档&#xff1a; 1. 约定存档格式 2. 实现存档函数 3. 实现读档函数 打…

RabbitMQ学习笔记(消息发布确认,死信队列,集群,交换机,持久化,生产者、消费者)

一、MQ基本介绍 MQ&#xff08;message queue&#xff09;&#xff1a;本质上是个队列&#xff0c;遵循FIFO原则&#xff0c;队列中存放的是message&#xff0c;是一种跨进程的通信机制&#xff0c;用于上下游传递消息。MQ提供“逻辑解耦物理解耦”的消息通信服务。使用了MQ之…

Ubuntu 22.04 安装Nvidia显卡驱动、CUDA、cudnn

GPU做深度学习比CPU要快很多倍&#xff0c;用Ubuntu跑也有一定的优势&#xff0c;但是安装Nvidia驱动有很多坑 Ubuntu版本&#xff1a;22.04.3 LTS 分区&#xff1a; /boot分配 1G &#xff0c;剩下都分给根目录/ 显卡&#xff1a;GTX 1050 Ti 坑1&#xff1a;用Ubuntu自带的 …

基于SpringBoot的车辆管理系统

目录 前言 一、技术栈 二、系统功能介绍 员工信息管理 证件信息管理 车辆信息管理 事故登记管理 事故登记 保养登记 违章登记 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实…

【小沐学前端】Windows下搭建WordPress(nginx1.25、PHP8.2、WordPress6.3、MySQL5.7)

文章目录 1、简介1.1 Nginx1.2 PHP1.3 WordPress1.4 MySQL 2、下载2.1 Nginx2.2 PHP2.3 WordPress2.4 MySQL 3、搭建环境3.1 Nginx3.2 PHP3.3 WordPress3.4 MySQL 4、配置WordPress4.1 选择语言4.2 配置数据库4.3 登录界面4.4 常规设置4.5 写作操作 结语 1、简介 WordPress是基…

SEO搜索引擎

利用搜索引擎的规则提高网站在有关搜索引擎内的自然排名&#xff0c;吸引更多的用户访问网站&#xff0c;提高网站的访问量&#xff0c;提高网站的销售能力和宣传能力&#xff0c;从而提升网站的品牌效应 搜索引擎优化的技术手段 黑帽SEO 通过欺骗技术和滥用搜索算法来推销毫不…

WebPack-打包工具

从图中我们可以看出&#xff0c;Webpack 可以将多种静态资源 js、css、less 转换成一个静态文件&#xff0c;减少了页面的请求. 下面举个例子 &#xff1a; main.js 我们只命名导出一个变量 export const name"老六"index.js import { name } from "./tset/…

VC6 WIN32,Dialog为主窗口编程

VC6是Microsoft非常经典的开发环境&#xff0c;尤其是Windows API方式开发&#xff0c;自从Quick C for win以来基本保持着同样的风格和API&#xff0c;在它上面做习练很不错。下面是习练完成的界面&#xff0c;它是在自动创建的WIN32 application模板下&#xff0c;增加一个Di…

怎么将Linux上的文件上传到github上

文章目录 1. 先在window浏览器中创建一个存储项目的仓库2. 复制你的ssh下的地址1) 生成ssh密钥 : 在Linux虚拟机的终端中,运行以下命令生成ssh密钥2)将ssh密钥添加到github账号 : 运行以下命令来获取公钥内容:3. 克隆GitHub存储库:在Linux虚拟机的终端中,导航到您想要将文件上…

ESP32设备驱动-I2C-LCD1602显示屏驱动

I2C-LCD1602显示屏驱动 1、LCD1602介绍 LCD1602液晶显示器是广泛使用的一种字符型液晶显示模块。它是由字符型液晶显示屏(LCD)、控制驱动主电路HD44780及其扩展驱动电路HD44100,以及少量电阻、电容元件和结构件等装配在PCB板上而组成。 通过前面的实例我们知道,并口方式…

GPX可视化工具 GPX航迹预览工具

背景 当我们收到别人分享的航迹文档&#xff0c;即gpx文档时&#xff0c;如何快速的进行浏览呢&#xff1f;我们可以使用GIS软件来打开gpx文档并显示gpx中所记录的航迹&#xff0c;例如常用的GIS软件有googleEarth&#xff0c; Basecamp&#xff0c; GPXsee&#xff0c; GPX E…

Net相关的各类开源项目

Net相关的各类开源项目 WPFHandyControlLive-ChartsWPFDeveloperswpf-uidesignStylet WebScheduleMasterYiShaAdminBlog.CoreNebula.AdminNewLife.CubeOpenAuth UnityuGUIUnityCsReferenceEpitomeMyUnityFrameWorkKSFrameworkTowerDefense-GameFramework-Demo 通用ClientServer…

mac电脑任务管理器 Things3 for Mac中文

Things 3是一款效率软件&#xff0c;可以帮助用户规划一天行程、管理项目&#xff0c;并使使用者按部就班地朝目标迈进。以下是Things 3的主要特点和功能&#xff1a; 待办事项&#xff1a;以“待办事项”为基本组成部分&#xff0c;每一则待办事项都是迈向大成就的一小步。用…

C++stackqueue

目录 一、stack 1.1 简要介绍 1.2 小试身手 1.3 模拟实现 二、queue 2.1 简要介绍 2.2 小试身手 2.3 模拟实现 三、deque 3.1 简要介绍 3.2 分析底层 四、priority_queue 4.1 简要介绍 4.2 小试身手 4.3 模拟实现 五、仿函数/函数对象 5.1 简要介绍 一…

优化方法的应用(optimtool.example)

import optimtool as oo from optimtool.base import np, sp, pltpip install optimtool>2.4.2优化方法的应用&#xff08;optimtool.example&#xff09; import optimtool.example as oeLasso问题&#xff08;Lasso&#xff09; oe.Lasso.[函数名]([矩阵A], [矩阵b], [因…

模型训练环境相关(CUDA、PyTorch)

模型训练环境相关&#xff08;CUDA、PyTorch&#xff09; 1. 查看当前 GPU 所能支持的最高版本的 CUDA2. 如何判断是否安装了 CUDA3. 安装 PyTorch3.1 创建虚拟环境3.2 激活并进入虚拟环境3.3 安装 PyTorch 1. 查看当前 GPU 所能支持的最高版本的 CUDA 打开 NVIDIA 控制面板&a…